您的位置:首页 > 编程语言 > Java开发

Java中抽象类实现多态

2016-08-19 11:48 113 查看
不能new出抽象类对象,但可以定义一个抽象类的引用。

可以把一个子类对象的地址赋给抽象类的引用,然后通过抽象类的引用调用子类从父类继承过来的方法,即抽象类也可以实现多态

假设A是抽象类,B是A的子类且完全实现了A的所有抽象方法,则

A aa = new A(); //error

A aa = new B(); //OK

abstract class A
{
public abstract void f();
}

class B extends A
{
public void f()
{
System.out.println("哈哈");
}
}

public class rain
{
public static void main(String[] args)
{
//A aa1 = new A(); //error
A aa2 = null; //可以定义一个抽象类的引用 等价于 A aa2;
aa2 = new B(); //将子类对象的地址赋给抽象类的引用
aa2.f(); //用抽象类的引用访问子类的方法 这就是多态
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: