JAVA编程思想第七章-复用类

1.一个对象被转换成string时,会调用对象的toSting方法

public class demo7 {

private water w=new water();

private String s="string";

public static void main(String args[]){

demo7 d=new demo7();

System.out.println(d);

}

public String toString(){

return s+w;

}

}

class water{

private String s;

water(){

System.out.println("water");

s="construct";

}

public String toString(){

return s;

}

}

 

 

 

2.super调用的父类中的方法,继承之后的类在初始化的时候,会先初始化父类。

public class demo8 extends demo9{

demo8(){

System.out.println("demo8");

}

public void doti(){

super.doti();

System.out.println("doti2");

}

public static void main(String args[]){

demo8 d=new demo8();

d.doti();

}

}

class demo9{

demo9(){

System.out.println("demo9");

}

public void doti(){

System.out.println("deti1");

}

}

 

demo9

demo8

deti1

doti2

 

 

3.子类继承父类之后,在向上转型的时候,会丢失子类中的新增方法。

 

4.组合就是在一个类中new另一个类,这样可以调用另一个类的所有方法。

   继承是一个类可以继承过来另一个类的所有方法,并且可以增添新的方法。

   如何选择是用组合还是选择是用继承在于查看类是否需要向上转型,如果需要向上转型就可以用继承。

 

5。类的初始化流程:子类继承父类,static,super等 有这些条件的时候的一个顺序

     看java编程思想95页的代码。

你可能感兴趣的:(Java)