亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

談談我對多態的理解

標簽:
Java

什么是多态

多态是面向对象的特性之一,从字面上理解,多态就是指一个对象在运行是会有多种形态,就比如可以说student是一个person,也可以说student是一个object。

我们来看一个经典的例子:

Service service=new ServiceImpl();

我们经常看到这样的代码,这就是多态的一种表现。

为什么要多态

多态可以让代码更加灵活,再举一个例子:

List<String> list=new ArrayList<>();

这也是我们常写的一句代码,为什么不把List换成ArrayList?

一个很大的原因就是要考虑到以后的情况,假设以后ArrayList已无法满足我们软件的需求,这时候可能需要一个和ArrayList相似的类来替代它,那么如果我们直接面向具体的类进行编程,以后的可维护性肯定会变差,所以多态能使我们面向抽象进行编程,使代码更加地灵活。

多态的缺点

那么多态肯定会有它的缺点,那就是我们无法调用我们具体类的方法。什么意思?举个例子:

假设我们的Person类有一个speak方法,Student类是从Person类继承过来的,它有一个额外的方法study。

那么我们直接这样:

Person student=new Student();

很明显,这样我们就失去了study这个方法。


點擊查看更多內容
2人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消