您的位置:首页 > 其它

多态与父子类,抽象类new调用的一点区别-----学习日志

2016-04-25 10:25 281 查看
chinese a=new chinese();

a.say();

Amerca b=new Amerca();

b.say();

==========

Person c=new chinese();

c.say();

Person d=new Amerca();

d.say();

以上两者其实是一样的实现效果。不过一个是继承类子类类型,一个是多态父类类型。

用多态的时候有一个前提就是必须是继承类。这样用父类类型才能调用子类中重写的方法。

=========

public class Person {

public void say(){

// System.out.println("人类有说话的能力"); 父类中这一句有没有都可以正常实现。甚至可以直接转化抽象类public abstract say();

};

}

假如你重新创建一个renlei的抽象类

public abstract class renlei {

public abstract void say();

public void say1(){};

}

效果一样,可以用继承,多态两种方法调用。

japanese e=new japanese();

e.say();

renlei f=new japanese();

f.say();

总结成一句话就是

子类有相同的功能抽取出来放在一个类里当父类,然后被继承。如果父类的方法没有实现可以把父类写成抽象类,就进一步简化不用谢方法体,只写方法名。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: