我对向上造型不是很明白想问问(小白)

wszagq 2015-08-28 05:38:29
对于多态,可以总结如下:

1、使用父类类型的引用指向子类对象。

2、该引用只能调用父类中定义的方法和变量(就是可以调用子类中重写了父类的方法,子类中其他方法则不能调用)

3、如果子类中重写了父类中的一个方法,则父类类型引用在调用这个方法的时候,一定是调用子类中(动态连接,动态调用)

4、变量不能被重写,重写只是针对方法,如果在子类中重写了父类的变量,在编译的时候会报错。

父亲 儿 = new 儿();
父亲 父 =new 父();
我不知道这俩者有什么区别 向上造型也只是能调用 父类的方法

new 父();

也是只能用父类的方法。 实在看不懂 这俩有什么区别
...全文
514 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sayHi2me 2015-08-28
  • 打赏
  • 举报
回复
当我们要对很多子类对象操作怎么办?一个类型一种方法吗?没关系,向上转型,都是父类引用,同一个类型一个方法搞定
eheya 2015-08-28
  • 打赏
  • 举报
回复
多态是面向对象语言的核心机制,多态的三个必要条件:1)要有继承 2)要有重写 3)父类的引用指向子类的对象 多态在很多地方有一个应用,例子: class Animal{ public void voice(){ System.out.println("叫声...."); } } class Dog extends Animal{ public void voice(){ System.out.println("狗叫声..."); } } class Cat extends Animal{ public void voice(){ System.out.println("猫叫声..."); } } public class Test{ public static void main(String[]args){ Dog d = new Dog(); Cat c = new Cat(); jiaosheng(c); } public static void jiaosheng(Animal animal){ animal.voice(); } }

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧