日常学习 8.08 Java面向对象三大特征之 多态

本文探讨了Java面向对象编程中的多态特性,涉及多态的实例、前提条件、常见写法,以及与继承和接口的关系。作者强调了多态的优势(灵活性和代码扩展性)与可能的缺点(访问子类方法问题),并提到了解决方法——向下转型。
摘要由CSDN通过智能技术生成

8.08

Java面向对象三大特征之 多态

生活中的多态
-<input> 根据不同type属性值,产生不同形态
-水根据不同温度条件,产生不同形态。 常温:液态水 沸点:气态水(水蒸气),凝点:固态水(冰)

总结:一件事根据不同的环境条件,产生不同的 结果/形态

继承:主角是子类
多态:主角是父类

编程中的多态:
一个父类根据使用不同的子类对象,调用同样的方法,产生不同的结果

多态的前提条件
1.必须出现在继承体系中
2.必须要有方法重写
3.必须满足一种写法 "向上转型"


多态的验证
满足以上三个条件的基础上,调用同一个方法,产生不同的结果

多态的其他常见写法
1.当数组的类型是父类的类型时,所有子类都能存入数组中
满足 向上转型

2.当方法的形式参数是父类的类型时,所有的子类对象都能传进来
满足 向上转型 (父类类型a) 传参 (子) a = 子)
3.当方法返回值的类型是父类的类型时,所有的子类对象都能返回出来


多态的作用与弊端
好处:让程序更加灵活,提高代码扩展性
缺点:在多态的环境中,无法访问子类特有的方法
解决方法:向下转型 ==> 强转 (数据类型)变量名

接口类型(对标css)
定义关键字 interface

接口与类的对比
-成员属性
默认所有的属性都是常量(不变final+共享 public static)
接口中属性的定义可以省略public final static

-构造方法
接口中没有构造方法

-成员方法
默认情况下绝对是抽象方法,可以省略public abstract

接口的作用
1.设计
2.规则/协议 (抽象方法)

继承体系
-实现关系 类与接口之间的关系(师徒)
关键字 implements
class A implements 接口B,接口C,....
-特点:
类A可以实现多个接口(多实现)
案例:
模拟电脑计算机的USB接口运行
-电脑类
-USB接口
-鼠标子类
-键盘子类
-测试类

心得:忘记加关键字了,平白无故浪费好多时间,而且代码量变多,对需要的数据的类型判断出现差错,需要多加练习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值