JAVA中类的继承
1为什会有继承
继承的作用在于代码的复用。重复利用以前写过的属性和方法,除此之外,还可以添加新的方法和属性,或者对之前的方法和属性进行扩充。
2定义 百度百科中继承定义
①继承是指一个对象直接使用另一对象的属性和方法。(C++中的函数在JAVA中叫方法。)
②也指按照法律或遵照遗嘱接受死者的财产、职务、头衔、地位等。
我们可以用定义②来加强理解①,生活中,我们常常会听到××继承了他父亲的几座房子。××继承了她父亲乐于助人的美好品质。类中的继承也是这样,子类(基类)继承父类(导出类)的方法和变量,在子类中可以调用父类的方法和变量。在java中,只允许单继承,即一个类最多只能显式地继承一个父类。但是一个类却可以被多个类继承,也就是说一个类可以拥有多个子类。(诡异的理解是:一个人只有一个父亲却可以有很多个儿子),子类和父类完全一样么?当然不是,就像儿子不可能和父亲一样,子类可以在父类基础上进行重写(更改父类方法以便自己利用)和增添新的方法。
3表示格式
public class 子类 extends 父类{}
在java中使用extends关键字来表示继承关系。默认的,创建的类总是隐式地继承根类Object。当然,你也可以自己规定子类继承的父类。
4注意事项
1)能够继承父类的public和protected成员变量和方法.不能够继承父类的private和默认的成员变量和方法.
2)子类不能小于父类.
访问权限public>protected>默认的>private
3)只有子类和父类在同一个包下,子类才能够继承父类。
5重载和重写
重载和C++一样,同名但形参列表不同.
Java程序中类的继承特性是:子类中可以增加自己的方法和变量,同时也可以对父类中的方法进行扩展,便于自己使用,这就是重写。
重写,同名.同形参列表.同返回值.(有继承才可重写)
6类型转换
1)强制类型转换(向下转型)
将父类对象转换为子类类型,例如:
Pet pet=new Pet();//调用对象需创建对象
Dog dog=(Dog)pet;
2)自动类型转换(向上转型 )
将子类对象转换成父类类型
Pet pet=new Dog();
注:
一个能进行强制类型转换的类,之前一定经历过一次自动类型转换,在强制类型转换为父类之后,并不能调用子类中特有的方法。
public static void main (String[] arge){
Student stu=new UNStudent(); //将子类转为父类
stu.setName(".....") ;
//将子类变成父类之后不能再调用子类特有方法
//将父类强制类型转换为子类,才可调用 子类特有方法
UNStudent stu2=( UNStudent) stu;
Java中类的继承
最新推荐文章于 2023-04-27 15:26:35 发布