继承与多态

本文详细介绍了Java面向对象的三大特性:继承、多态和封装,并深入探讨了方法重写与重载的区别及应用场景。此外,还讲解了在不同访问权限下子类如何调用父类的属性和方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java面向对象的三大特性有:1.继承 2.多态 3.封装

Java多态的特性是由:方法重载,继承,方法重写,自动转型等技术
所引起的问题。


1、Java的继承语法格式
Java继承的关键字是:extends

格式:
public class 子类名 extends 父类名 {

}
注意:Java中类的继承是单继承。一个子类值只可以有一个父类。但可以有多重继承,即子类还可以派 生出子类
2、子类继承父类后,那么子类就继承到了父类所有的属性和方法。
子类继承父类后,子类和子类的对象能直接调用的属性和方法分为两种情况:

1.子类和父类在同一包下:
1.私有的属性,方法以及构造方法是不能被子类的对象(子类对象)直接调用的。
2.默认的,受保护的和共有的属性以及方法都可以被子类的对象以及子类直接调用。
2.子类和父类在不同的包下:
在子类的{}中,只有公有的,受保护的属性和方法能在子类中直接调用。
子类对象调用方法时,那么只有公有的属性和方法能被子类对象调用。

访问修饰符 范围
private 在类的{}里边
默认的 在同包的任何类中。
protected 在同包下和不同包下是,受保护的属性、方法可以在子类的{}里边调用。
public 只要是一个项目(工程)中的类都可以直接调用。
3、继承的作用:
1.提高代码的重用性。
2.提高程序的扩展性。
4、方法重写
条件:必须要存在一个继承关系。

子类在重写方法时,子类重写的方法要和父类的方法名,返回值类型,参数类型、个数、顺序完全一致。
方法体要与父类的不同。
调用方法的时候,new关键字创建的实体是谁就会优先调用谁的构造方法和方法,当调用的方法子类中没有的时候就会调用父类中的属性和方法。
例如:在Man方法中
public void giveFlower(){
System.out.println(getName()+"送给她一朵花");
}
在子类Boy方法中
public void giveFlower(){
System.out.println(getName()+"在"+getAge()+"的时候送给她一朵花");
}

这就是方法重写,当在子类Boy中重写了方法giveFlower方法。那么在创建了一个Boy类的实体后,调用 giveFlower方法时,会有“xx在xx的时候送给她一朵花”,实现了子类中的方法,不再使用父类中的方法了。

注意:当实现继承后,在子类中也可以实现方法重载。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值