A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 边亮 中级黑马   /  2013-3-12 20:01  /  1514 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

父类  父类名=new  子类();
就像student是person的子类
person是父类
person  per=new student();
这样做有什么意义?per还是只能调用父类的属性方法.

3 个回复

倒序浏览
s是不是子类多的时候好调用
回复 使用道具 举报
你这就是:父类引用指向子类对象
基本概念:
父类 引用=new 子类();

调用实例方法:
前提:查看父类中是否存在该方法       调用:调用的是子类中的重写的方法。
调用实例属性:
前提:父类中是否存在属性             调用:父类中的属性。                       
类属性:
前提:查看父类中是否存在该属性      调用: 调用的是父类中的类属性
类方法:
前提:查看父类中是否存在该属性      调用: 调用的是父类中的类方法
关于对象向上向下转型
向上转型:  父类引用指向子类对象  自动转换
向下转型: 将父类的引用强制转换成子类的引用。 强制转换
为什么向上转型:它提高了代码的扩展性与可维护性。
为什么向下转型: 因为要调用子类中特有的行为。

当他调用实例方法时,调用的是子类中重写的方法
另外,当他向下转型时,可以调用子类中特有的行为,不仅仅可以调用父类的属性方法啊
回复 使用道具 举报
面向对象编程三大特性:封装、继承、多态。父类 父类对象=new 子类();体现的是多态的特性。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马