多态:不同的对象对同一行为做出的不同相应

 

基于同一父类,不同实例,调用同一方法,实现不同的功能

 

实现多态的三要素:

1.基于继承或实现

2.必须重写父类的方法

3.父类引用指向子类对象:

父类 对象 = new 子类();

 

例子:

 

Printer.java:



package com.lqh.chapter03;

public class Printer {
public void print() {

}
}


PrinterColor.java:



package com.lqh.chapter03;

public class PrintColor extends Printer {

//重写父类的方法
public void print() {
System.out.println("彩色打印");
}

}


PrintBlackAndWhite.java:



package com.lqh.chapter03;

public class PrintBlackAndWhite extends Printer {

//重写父类的方法
public void print() {
System.out.println("黑白打印");
}

}


PrinterTest.java:



package com.lqh.chapter03;

public class PrinterTest {
public static void click(Printer printer) {
printer.print();
}
public static void main(String[] args) {
click(new PrintColor());
click(new PrintBlackAndWhite());
}
}


输出结果为:

彩色打印
黑白打印