发表于: 2016-06-26 11:09:02

0 1915


补充一下昨天的日报:


今天完成的事情:


1.学习java中的基础语法继承中的构造方法。


代码如下:


package 继承中的构造方法;

/**
* Created by ACER on 2016/6/25.
*/

class SuperClass{
private int n;

   SuperClass(){
System.out.println("SuperClass()");
   }

SuperClass(int n){
System.out.println("SuperClass("+ n +")");
       this.n = n;
   }

}

class SubClass extends SuperClass{
private int n;
   SubClass(int n){
System.out.println("SubClass("+ n +")");
       this.n = n;
   }

SubClass(){
super(300);
       System.out.println("SubClass()");
   }
}

public class TestSuperSub {
public static void main(String arg[]){
SubClass sc1 = new SubClass();
       SubClass sc2 = new SubClass(400);
   }
}

这个程序的执行的程序结果如下:

SuperClass(300)

SubClass()

SuperClass()

SubClass(400)

这程序执行过程如下:


1)new一个SubClass的对象,赋值给sc1,SubClass()中的形参没有参数,会自动找到SubClass类中的中的无参的SubClass()构造方法。

执行super(300)引用基类的方法,并传递参数300,找到SuperClass中有参数的方法,并输出superClass(300);


2)执行打印SubClass();


3)new一个SubClass对象,赋值给sc2,SubClass()中有参数,先找到SubClass中的有参数的构造方法,注意一点,因为SubClass从SuperClass中继承,所以在执行打印SubClass前会找到SuperClass的无参的构造方法,执行,SuperClass()并打印;


4)执行并打印Subclass(400);


2.今天测试了PierreTask4,还是没有找到原因出在哪里,周一跟晓进姐讨论一下,并熟悉整个项目的执行流程,并写下来。



明天计划的事情:


拿到OpenResty的票,周日去看看。


遇到的问题:


对于上述流程中的打印的结果三不太明白,后来发现SubClass从SuperClass中继承,如果没有SuperClass的方法,会自找到SuperClass中的无参的方法执行。


收获:


学习基础语法中的Super关键字,继承中的构造方法,并实际操作。





返回列表 返回列表
评论

    分享到