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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 2653341790 中级黑马   /  2016-3-13 10:36  /  480 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(1) 某一类事物的多种存在形态。
** 方法重载( 静态多态)
** 方法重写( 动态多态, 对象多态)
(2) 对象多态的前提
A :类与类( 或接口) 要有继承( 或实现) 关系。
B :一定要有方法的重写。
C :一定要有父类或者接口的引用指向子类的对象。
(3) 多态思想:可以指挥同一类型的一批对象做事情。多态的出现让我们复杂的问题简单化
了。
A :Animal Cat Dog
**method(Animal a){a.eat();}
B :同学们吃饭
C :士兵打仗( 抬枪,瞄准,射击) 。
(4) 多态中成员的特点:( 我们只研究特殊的,就是说名字一样的东西)
Fu f = new Zi();
A :成员变量:编译和运行都看 Fu 。
B :非静态方法:编译看 Fu ,运行看 Zi 。
C :静态方法:编译和运行都看 Fu 。
举例: 动物的例子:
向上转型
Animal a = new Cat();
a.eat();
//a.catchMouse();
向下转型
Cat c = (Cat)a;
c.eat();
c.catchMouse();
// 向上转型
Animal a = new Dog();
// 向下转型 转换异常
//Cat c = (Cat)a;
Dog d = (Dog)a;
孔爹的例子:
孔爹: 教课(Java)
孔子: 教课( 论语), 看小说(), 打游戏() 。
爹 孔爹 k = new  孔子();// 穿上他爹衣服, 就跟着去了
k. 教课( 论语) 。
//k. 看小说();
子 孔子 kz = ( 孔子)k;// 把衣服脱了
kz. 教课( 论语);
kz. 看小说();
kz. 打游戏();

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马