多态的介绍和多态的特点
作者:互联网
java中的多态:多态是指不同类的对象在调用同一个方法所呈现的效果不同
使用条件:
1.要有继承或者实现的关系
2.要有方法的重写
3.要有父类引用指向子类对象
多态的作用:消除了子类之间的耦合关系,提高了程序的可扩展性和可维护性,耦合指的是代码之间的关联程度
父类引用指向子类对象格式: 父类类名 引用名称 = new 子类类名();
同一个引用类型,使用不同的实例而执行不同的操作,即父类引用指向子类
现实生活中的多态通过java代码来实现
Cut:
理发师 :剪头发
医生 : 动手术
演员 : 暂停
public class Cut {
public void cut(){
System.out.println("父类:cut");
}
}
/**
* 理发师
*/
class Barber extends Cut{
@Override
public void cut(){
System.out.println("理发师:理发");
}
}
/**
* 医生
*/
class Doctor extends Cut{
@Override
public void cut(){
System.out.println("医生:做手术");
}
}
class Acor extends Cut{
@Override
public void cut(){
System.out.println("演员:暂停");
}
/**
* 测试
* @param args
*/
public static void main(String[] args) {
Cut cut = new Doctor();
cut.cut();
}
}
这三个角色分别都继承了父类,并且重写了父类的方法
通过父类引用子类就是将一个子类的实现赋值给了一个父类的引用
我们可以看到每一次调用的cut方法执行的效果完全不同
多态的成员访问特点:
成员变量:编译看父类,运行看父类
成员方法:编译看父类,运行看子类
对象的类型转换
对象的类型转换分为向上转型和向下转型
向上转型:
父类引用指向子类对象
父类类名 对象名 = new 子类类名;
向下转型
由父类引用转成一个对应的真实的子类对象
格式 目标对象类型 对象名 = (目标对象类型)被转换的引用
一定要确保转换的类型相同。否则会发生类型转换异常
标签:cut,子类,多态,介绍,特点,Cut,父类,public 来源: https://www.cnblogs.com/ailhy/p/16388224.html