1.定义:多态是同一个行为具有多个不同表现形式或形态的能力,同样的方法在不同的对象上产生不同的效果。
2.多态的三个必要条件:
2.1.继承
2.2.重写
2.3.父类引用指向子类对象(向上转型)。
eg:直接怼代码
package cn.yhy;
/**
* 打印机父类
* @author 22562
*
*/
public class Print_M {
public void print() {
System.out.println("打印");
}
}
```java
```package cn.yhy;
/**
* 黑白打印机子类
* @author 22562
*
*/
public class HeiBaiDaying extends Print_M{
@Override
public void print() {
// TODO Auto-generated method stub
//super.print();
System.out.println("黑白打印");
}
}
package cn.yhy;
/**
* 彩色打印机子类
* @author 22562
*
*/
public class CaiSe extends Print_M{
public void print() {
// TODO Auto-generated method stub
//super.print();
System.out.println("彩色打印");
}
}
package cn.yhy;
/**
* 测试类
* @author 22562
*
*/
public class Test {
public static void main(String[] args) {
printSomthing(new HeiBaiDaying());
printSomthing(new CaiSe());
}
private static void printSomthing(Print_M p) {
p.print();
}
}
结果如下: