面向对象三大特征: 继承、封装、多态。
继承的使用原则:
1.观察要使用的类,确定他们之间共同的和特有的特征和行为,将这些共性数据迁移到父类里。
便于子类中进行方法和属性的重用。
2.对于不同的特征和行为,在子类里可以重新定义
单继承与多继承:
在java中,一个类只能有一个父类。一个类不能同时继承两个父类。
所有的类的根类都是Object
重写:
1.发生在父类和子类之间。
2.子类的方法名和父类相同,参数列表相同,返回类型也相同。
3.当子类对象进行方法调用时,会优先调用子类重写的方法。
子类对象创建之前,会先产生父类对象。然后在父类对象基础之上,扩展子类特有的属性和方法。
所以子类对象中包含完整的父类对象,就可以重用父类中定义的方法和属性
子类对象创建之前,需要通过super()调用父类的构造方法,产生父类对象。
如果子类构造方法中没有书写super(),这时,虚拟机会自动调用super()。
如果父类中没有无参构造方法,子类必须通过super(参数)显示调用。
final关键字:
可以修饰类、方法、变量名。修饰类表示该类不能被子类所继承,修饰方法表示该方法
不能被子类重写,修饰变量表示该变量的内容不能改变
继承的使用原则:
1.观察要使用的类,确定他们之间共同的和特有的特征和行为,将这些共性数据迁移到父类里。
便于子类中进行方法和属性的重用。
2.对于不同的特征和行为,在子类里可以重新定义
单继承与多继承:
在java中,一个类只能有一个父类。一个类不能同时继承两个父类。
所有的类的根类都是Object
重写:
1.发生在父类和子类之间。
2.子类的方法名和父类相同,参数列表相同,返回类型也相同。
3.当子类对象进行方法调用时,会优先调用子类重写的方法。
子类对象创建之前,会先产生父类对象。然后在父类对象基础之上,扩展子类特有的属性和方法。
所以子类对象中包含完整的父类对象,就可以重用父类中定义的方法和属性
子类对象创建之前,需要通过super()调用父类的构造方法,产生父类对象。
如果子类构造方法中没有书写super(),这时,虚拟机会自动调用super()。
如果父类中没有无参构造方法,子类必须通过super(参数)显示调用。
final关键字:
可以修饰类、方法、变量名。修饰类表示该类不能被子类所继承,修饰方法表示该方法
不能被子类重写,修饰变量表示该变量的内容不能改变