|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net有没有机会赶上java。函数源代码以下
importjava.util.*;
classsuper1{
{
System.out.println("super1ok");
}
super1()
{
System.out.println("3");
}
}
classEmployeeextendssuper1{
privateStringname;
privatedoublesalary=1500.00;
privateDatebirthday;
publicEmployee(Stringn,DateDoB){
System.out.println("2");
name=n;
birthday=DoB;
}
publicEmployee(Stringn){
this(n,null);
System.out.println("4");
}
}
classManagerextendsEmployee{
{
System.out.println("Managerok");
}
privateStringdepartment;
publicManager(Stringn,Stringd){
super(n);
department=d;
}
}
publicclasstest1{
publicstaticvoidmain(Stringargs[]){
newManager("Smith","sales");
}
}
newManager("Smith","sales")挪用历程:
(1)绑定机关函数参数。实在就是传送参数的历程
(2)检察是不是有this()语句。没有。固然没有利用this()语句挪用机关函数,可是该步骤不克不及省略
(3)挪用super()语句,此时,程序跳转到PublicEmployee(Stringn)。
(4)绑定机关函数参数Stringn
(5)检察是不是有this()。有,则实行机关函数publicEmployee(Stringn,DateDoB)
(6)绑定机关函数参数Stringn,DateDoB
(7)检察是不是有this()语句。没有
(8)实行有体系主动拔出的super()语句:实行super1()
(9)实行显式初始化语句System.out.println("super1ok");
(10)实行机关函数语句System.out.println("3");
(11)实行显式初始化语句privatedoublesalary=1500.00;
(12)实行机关函数语句System.out.println("2");同时实行name=n;birthday=DoB;
(13)实行机关函数语句System.out.println("4");
(14)实行显式初始化语句System.out.println("Managerok");
(15)实行机关函数语句department=d;
几点总结:
(1)对象是由new运算符创立的,且在任何机关函数实行之前就已创立终了了
(2)机关函数的实行老是“向上”的:并且老是先实行完父类的机关函数
(3)在机关函数中,没有this()语句则由super()语句。没有this()时,大概本人编写super(),大概由体系主动调
用super()
(4)显式初始化语句老是先于机关函数语句,但后于super()或this()
多谢指点,其实我对.net和ruby也不是很了解,对与java也只是刚起步的阶段,只是在学习中有了点想法就写出来了,现在俺本科还没毕业,所以对大型项目基本上也没有什么经验。 |
|