多态的概念理解 可以将一个子类的对象赋给超类变量 我理解的是 超类可以对子类中的方法指手画脚 但前提是只能对子类中的父类方法可以这样 子类中新扩展的方法父类无权操作 是这个意思不? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 建议看看upcasting(回溯)是怎么回事。你现在看这个问题的角度是不对的。比oo的底层实现方式要高,比oo的实际应用要低。抽象层次抓的不对容易产生歧义。 多态是指在执行期间(非编译期)判断所引用对象的实际类型,根据其实际类型调用其相应的方法。多态的三个必须条件: 1.要有继承 2.要有重写 3.父类引用指向子类对象如: class Animal{ private String name; Animal(String name){ this.name=name; } public void enjoy(){ System.out.println("叫声......."); } } class Bird extends Animal{ private String featherColor; Bird(String name,String f){ super(n); featherColor=f; } public void enjoy(){ System.out.println("鸟叫声......."); }}class lady{ private String name; Lady(String name,Animal pet){} public void myPetEnjoy(){ pet.enjoy(); }}public class Test{ public static void main(String[] args){ lady h=new lady("h",new Bird("birdname","green"));//父类引用指向子类对象 h.myPetEnjoy();//动态调用子类的方法 }} java运算符优先级 java浮点型数据格式的设置疑惑? 问个关于resultset的问题 java link access 可以像其它DB一样指定ip ,端口号吗? 我想问,用java读写excel的问题,应该发在哪个板块儿呀? 邮件列表问题 请问把文件从客户端传到服务器,并写在服务器硬盘上,怎么实现呢? 关于String数组的问题: 为什么运行窗口是最小化的,而且上面什么都没有? 这个程序怎么了,在线等待,设了setAutocommit(true),为什么不能更新数据库 今天刚考的c的笔试题 关于图片显示(在线等急)
你现在看这个问题的角度是不对的。比oo的底层实现方式要高,比oo的实际应用要低。抽象层次抓的不对容易产生歧义。
1.要有继承
2.要有重写
3.父类引用指向子类对象如:
class Animal{
private String name;
Animal(String name){
this.name=name;
}
public void enjoy(){
System.out.println("叫声.......");
}
} class Bird extends Animal{
private String featherColor;
Bird(String name,String f){
super(n);
featherColor=f;
}
public void enjoy(){
System.out.println("鸟叫声.......");
}
}class lady{
private String name;
Lady(String name,Animal pet){}
public void myPetEnjoy(){
pet.enjoy();
}
}public class Test{
public static void main(String[] args){
lady h=new lady("h",new Bird("birdname","green"));//父类引用指向子类对象
h.myPetEnjoy();//动态调用子类的方法
}
}