子类对象创建之前,会产生父类对象。然后在父类对象基础之上,扩展子类特有的属性和方法。所以子类对象中包含完整的父类对象,就可以重用父类中定义的方法和属性。
子类对象创建之前,需要通过super()调用父类的够造方法,产生父类对象。如果子类构造方法中没有书写super(),这是,虚拟机会自动调用super()。如果父类中没有无参构造方法,子类必须通过super(参数)显示调用
在判断题中子类继承父类是,把父类的构造方法和题中比较,如果方法名相同只有两个情况(方法的重写、方法的重载),如果方法名不相同,就是子类普通方法。
filan 关键字,可以修饰类、方法、变量。修饰该类表示该类不能被子类继承,修饰方法表示该方法不能被子类重写,修饰变量表示该变量的内容不能改变。
final Washer w =new Washer();
w.price =5000;
System.out.printlh(w); w=5000;
//引用类型的变量,如果修饰为filan,表示该变量的值不能发生变化。也就是不能在指向别的对象{属性可以变}
Static{
}
称为静态初始化块。在类加载是执行,也就是在产生对象之前执行。而切只执行一次。
{语句块}
称为实例初始化块,执行在静态代码块之后,构造之前,调用一次,执行一次。
内部类:在一个类中,爱定义一个类,这称为内部类。内部类相当于外部类的属性,内部类对象的产生必须依赖外部类对象。
内部类所产生的class文件:外部类类名$内部类名.class
Woman w=new Woman();
Woman.Chid c =W.new Chid();
子类对象创建之前,需要通过super()调用父类的够造方法,产生父类对象。如果子类构造方法中没有书写super(),这是,虚拟机会自动调用super()。如果父类中没有无参构造方法,子类必须通过super(参数)显示调用
在判断题中子类继承父类是,把父类的构造方法和题中比较,如果方法名相同只有两个情况(方法的重写、方法的重载),如果方法名不相同,就是子类普通方法。
filan 关键字,可以修饰类、方法、变量。修饰该类表示该类不能被子类继承,修饰方法表示该方法不能被子类重写,修饰变量表示该变量的内容不能改变。
final Washer w =new Washer();
w.price =5000;
System.out.printlh(w); w=5000;
//引用类型的变量,如果修饰为filan,表示该变量的值不能发生变化。也就是不能在指向别的对象{属性可以变}
Static{
}
称为静态初始化块。在类加载是执行,也就是在产生对象之前执行。而切只执行一次。
{语句块}
称为实例初始化块,执行在静态代码块之后,构造之前,调用一次,执行一次。
内部类:在一个类中,爱定义一个类,这称为内部类。内部类相当于外部类的属性,内部类对象的产生必须依赖外部类对象。
内部类所产生的class文件:外部类类名$内部类名.class
Woman w=new Woman();
Woman.Chid c =W.new Chid();