本周看书大概6小时左右,代码上大概4小时吧,对类又进行了更多的了解和实际运用,最大的收获就是java中的多态,首先之前我也总结过继承的关键词是extends,在继承这里注意我开始常忘记的,如果父类构造函数是含参的,那么在子类构造中要用super();为父类构造,具体用法这样:
public class A
{int x;
A(int a){x=a;}//含参的构造函数
}
public B extends A
{B(){super(int q);//这里q为一个相应的实参,其将用于父类的构造,注意super必须在子类构造函数第一行
............;//子类构造函数的内容}
}
如果父类构造没有参数那么可以不用super;然后是多态,这和c++很像,可以用子类的函数覆盖同名父类函数,用子类转换为父类对象后,执行的仍然是原子类的函数体;下面就是重头戏“接口”,这是个新概念,因为c++只能单继承,用接口就能得到类似多继承的多态效果。用法如下:
public interface A
{
public void run();//因为这是为了多态,所以函数体可以省略掉
}
public class B implements A
{
B(){};
void run(){system.out.println("B");//函数内容;}
}
public class C implements A
{
C(){};
void run(){system.out.println("C");//函数内容;}
}
public static void main(String[] args)
{
B x=new B();
C y=new C();
A z;
z=x;z.run();//会输出B
z=y;z.run();//会输出C
}
上面会输出
B
C
这就是接口的用法,同一个类可以与多个接口相关联,这样就可以实现多继承的效果。
这次总结就这么多吧。