帮忙解释一下这道程序!!!(在线等待) 1。这里面i的取值没有意义2。这个测试应该是用来察看类和父类的构造函数的调用顺序3。初始化PlaceSetting,就回调用父类Customnew Spoon,就回调用父类Utensil同理可得 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那些 int 其实半点作用都没有,完全可以不必理会。只是为了弄出个“非默认”的构造函数,所以硬加个参数而已。这样就要显式地调用父类的构造函数(即super(i))。只是为了演示,好让这个例子的调用流程更加清晰。流程:super(i+1)即调用custom(i+1),显示Custom constructor new Spoon(i+2)先调用父类的constructor Utensil(i+2),然后 再调用 Spoon(i+2) 以下同理。 Example:A extends B;B extends C程序运行顺序:C中的interface/static-->B中的interface/static-->A中的interface/static-->C中的instance variable/constructor-->B中的instance variable/constructor-->A中的instance variable/constructor-->A中的main()里面还有更深的概念,自己写程序去试:System.out.println("check: "+ variable): 你的这个程序其实就讲一个道理:首先你可以看一下他们之间的继承关系:我抽一个出来讲吧: Utensil + --------+--------- | | | Spoon Fork KnifeSpoon、Fork、Knife三个一共有一个共同的父类,而在new Spoon(i+2);的时间,super(i);先调用父类的构件器Utensil(int i){ System.out.println("Utensil constructor"); }所以先 System.out.println("Utensil constructor");而后 System.out.println("Spoon construtor");其他都一样PlaceSetting(9)对其他的没有什么影响,只是告诉你需要先构件9个构件器,new Spoon(i+2)的时间,系统给声明的sp分配内存 这个非常简单的就是关于constructor 继承的问题你只要知道在构造一个子类的instance时它的调用顺序就ok如子类先调用父类的constructor在执行自己的constructor多层继承就顺着根往上走有点递归调用的味道ok 2个很弱的问题 关于java的多线程管理,是由谁来实现的? 真正的菜鸟级问题!!!!!!!!!我都不好意思问了 跑马灯效果如何实现 java能否拷贝EXCEL文件到其他地方 读写数据库和读写配置文件哪个快一些? 什么时候应该try{}catch(){} 查询出数据的处理 关于Set的contains方法的疑问 大家帮我看一下!解决后立刻给分(在线等待) 请问是怎么一回事 再次提问关于类的问题;
只是为了弄出个“非默认”的构造函数,所以硬加个参数而已。这样就要显
式地调用父类的构造函数(即super(i))。只是为了演示,好让这个例子的调用流程更加清晰。
流程:super(i+1)即调用custom(i+1),显示Custom constructor
new Spoon(i+2)先调用父类的constructor Utensil(i+2),然后
再调用 Spoon(i+2)
以下同理。
Example:
A extends B;B extends C程序运行顺序:C中的interface/static-->B中的interface/static-->A中的interface/static-->C中的instance variable/constructor-->B中的instance variable/constructor-->A中的instance variable/constructor-->A中的main()里面还有更深的概念,自己写程序去试:System.out.println("check: "+ variable):
首先你可以看一下他们之间的继承关系:
我抽一个出来讲吧:
Utensil
+
--------+---------
| | |
Spoon Fork KnifeSpoon、Fork、Knife三个一共有一个共同的父类,而在new Spoon(i+2);的时间,super(i);先调用父类的构件器Utensil(int i){
System.out.println("Utensil constructor");
}所以先
System.out.println("Utensil constructor");而后
System.out.println("Spoon construtor");其他都一样PlaceSetting(9)对其他的没有什么影响,只是告诉你需要先构件9个构件器,
new Spoon(i+2)的时间,系统给声明的sp分配内存
就是关于constructor 继承的问题
你只要知道在构造一个子类的instance时它的调用顺序就ok
如
子类先调用父类的constructor在执行自己的constructor
多层继承就顺着根往上走
有点递归调用的味道
ok