继续是面对对象的一个显著特征。
特点:
1.使用extends关键字来表示继承
2.继承关系相当于父与子,子继承了父,可以使用父类中定义的资源
3.只支持单继承,不能同时继承多个,相当于一个儿子只能有一个爸爸。但是可以允许一个父类被多个子类继承。相当于一个爸爸有多个儿子,
4.父类的私有资源是不能被子类进行使用的,但也是进行了继承。(私有资源子类不能看见和使用)
5.子类继承了父类,拥有父类的资源后可以随意进行更改使用,也可以添加任何资源。
定义父类:私有资源由于被private修饰,所以没有访问权限

定义子类并且继承父类:

Super 与this
在继承时,子类可能会出现与父类相同变量名称的元素。
当变量名相同时,进行调用可以使用this 与super 进行选择子类或者父类中的元素
super 指父类中的元素 成员变量
this 指当前类中的元素 成员变量
定义父类与子类相同变量名的元素


在java中有个就近原则,当没有指定变量位置时,变量名又相同,则谁近就调用谁

构造函数:
构造函数的规格:public 类名(){} 构造函数语法要求,构造方法的名字必须是本类类名
子类继承了父类,子类在创建对象时,默认先调用父类的构造函数。
原因是子类在第一行默认存在一个super()。
构造函数存在三种形式:第一种无参,没有任何参数的
第二种含参,有个别参数的
第三种全参,即所有定义的变量都在

当子类继承父类时,构造函数是不能被继承的,因为语法要求,构造函数的的名字必须是本类类名,不能再子类种出现一个父类名字的构造方法。
且子类创建对象时,默认会调用父类的构造函数

重写Override
子类继承了父类种的方法,可以进行使用。当父类中的方法满足不了子类所需要的,子类就可以进行更改重写。父类中的私有方法是不能被重写的。但是子类可以定义与父类相同方法。
重写可以添加@Override进行判断是否正确重写。构造方法是不能被重写的。因为构造规则方法名必须与本类名一致。
重写的原则:两同 两小 一大
* 两同:子类方法的 方法名与参数列表 和父类方法的相同
* 一大:子类方法的 方法修饰符权限 >= 父类方法的
* 两小:子类方法的返回值类型 <= 父类方法的返回值类型
* 注意:这里所说的<=是指子类方法的返回值类型是父类返回值类型的子类
* 或者与父类的返回值类型一致,如果父类方法的返回值类型是void,子类保持一致即可

本文深入探讨了Java中的面向对象特性,包括使用extends实现继承,子类如何访问和使用父类资源。重点讲解了单继承特性、构造函数的调用顺序以及super和this的区别。此外,还详细阐述了方法重写的原则,如两同两小一大,并强调了构造函数和私有方法不可重写。通过实例解析,帮助开发者更好地理解和应用Java的继承和重写机制。
378

被折叠的 条评论
为什么被折叠?



