class c extends B public class overTest chark static public void main( String argl D voidlshowABCO C cc=new Co; cc. ShowABCO; System. out. println(super x) System. out. println(x) super show (; show(; 不能通过 Super superX来引用隐藏在另 个基础类的基础类中的成员 void showo System. out. printIn(class C:
class C extends B { char x = 'c'; void showABC( ) { System.out.println(super.x); System.out.println(x); super.show( ); show( ); } void show( ) { System.out.println("class C : "); } } public class OverTest { static public void main(String arg[ ]) { C cc = new C( ); cc.showABC( ); } } 不能通过super.super.x来引用隐藏在另 一个基础类的基础类中的成员
方法的重载: 类对自身已有的同名方法的重新定义。 通过参数列表来区分不同的方法。 参数列表的不同表现在: 参数类型不同、参数数目不同、顺序不同 注:不能通过返回值的不同来区分同 名的不同方法
方法的重载: 类对自身已有的同名方法的重新定义。 通过参数列表来区分不同的方法。 参数列表的不同表现在: 参数类型不同、参数数目不同、顺序不同 注:不能通过返回值的不同来区分同 名的不同方法
2、子类的构造函数 1、子类继承父类无参构造函数 2、若子类无构造函数,则它将继承父类的无参构 造函数作为自己的构造函数;若子类定义了构造 函数,则在创建新对象时,先执行父类的无参构 造函数,再执行自己的构造函数 3、对于父类中含参构造函数,子类可以在自己的 构造函数中使用 super调用它。但必须是第一个可 执行语句
2、子类的构造函数 1、子类继承父类无参构造函数 2、若子类无构造函数,则它将继承父类的无参构 造函数作为自己的构造函数;若子类定义了构造 函数,则在创建新对象时,先执行父类的无参构 造函数,再执行自己的构造函数 3、对于父类中含参构造函数,子类可以在自己的 构造函数中使用super调用它。但必须是第一个可 执行语句
class a i private int a; Aq){a=0;} ntia=i;) sturm a, lass b extends a 当一个构造函数需要调用另 double blb2: 个构造函数时应使用关键字this B({this(l1,122);} B(double dl, double d2)i bl=dI; b2=d2; j B(int i, double dl, double d2)i super(i; bl=di; b2=d2; 3 B(int i, double d)i super(i; b1=d; B(double d)i super (4); b2=d; 3
class A { private int a; A( ) { a = 0; } A(int i) { a = i; } int geta( ) { return a; } } class B extends A { double b1,b2; B( ) { this(11.1,12.2); } B(double d1, double d2) { b1 = d1; b2 = d2; } B(int i,double d1,double d2) { super(i); b1 = d1; b2 = d2; } B(int i,double d) { super(i); b1 = d; } B(double d) { super(4); b2 =d; } } 当一个构造函数需要调用另一 个构造函数时应使用关键字this
public class dci static public void main(String argl D) new B(; System. out. printIn(bb1. geta(++bb1 b1++bb1 b2) B bb2=new B(2.2, 3.3) System. out. println(bb2.geta(+ +bb2 b1++bb2 b2) B bb3=new B(4,5.5,6.66) System. out. println(bb3.geta(++bb3 b1++bb3 b2); B bb4=new B(7,8.8); System. out.printIn(bb4.geta(++bb4 b1++bb4 b2); B bb5= new B(99.9) ystem out printIn(bb5. geta(++bb5 b1+ +bb5 b2)
public class DCI { static public void main(String arg[ ]) { B bb1 = new B( ); System.out.println(bb1.geta( )+" "+bb1.b1+" "+bb1.b2); B bb2 = new B(2.2, 3.3); System.out.println(bb2.geta( )+" "+bb2.b1+" "+bb2.b2); B bb3 = new B(4, 5.5, 6.66); System.out.println(bb3.geta( )+" "+bb3.b1+" "+bb3.b2); B bb4 = new B(7, 8.8); System.out.println(bb4.geta( )+" "+bb4.b1+" "+bb4.b2); B bb5 = new B(99.9); System.out.println(bb5.geta( )+" "+bb5.b1+" "+bb5.b2); } }