国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

polymorphism

crossoverJie / 2765人閱讀

摘要:總的來說多態解決的問題就是的解耦問題。相反,運行時綁定就是程序在運行前不知道具體使用的方法的類型,只有運行時知道具體使用的方法類型。的整體機制就是使用運行時綁定的。

作為Java的第三大特性--多態,大家肯定很熟悉了,但是對于這個抽象的概念相信總有一些模糊,think in Java 在本章做了很多的解釋,具體講解了一下三個問題。
1.多態解決了什么問題?
2.什么是多態?
3.多態的擴展
多態解決了什么問題?

多態解決了type的解耦問題。多態使我們不用去關注具體的類型是什么,多態的設計就是為了讓我們忘記類型這一回事。因為我們不用關注具體的類型,所以很多代碼我們都可以復用,我們可以使用一段代碼解決類似的問題。這在我們開發過程中有很大的作用,這個解耦使我們每一層的使用牽連減小。總的來說多態解決的問題就是type的解耦問題。在思想上來說,就是讓我們忘記類型。

什么是多態?

當我說出這個問題的時候大家可能會下意識的以為我要進行一些很抽象性、很概念性的講解,實際我想說明的并不是這些概念性的東西,這些直接百度即可。那么回到正題,什么是多態?多態其實也有一些其他的叫法,我更喜歡其中一種,運行時綁定。
在講解這個詞的時候,首先我們來了解一下綁定。綁定分為運行前綁定和運行時綁定。運行前綁定就是在程序沒有綁定的時候程序就已經知道要使用的這個方法的具體類型是哪一個了。相反,運行時綁定就是程序在運行前不知道具體使用的方法的類型,只有運行時知道具體使用的方法類型。這樣也就實現了不用知道具體的Type的效果。
Java的整體機制就是使用運行時綁定的。除了屬性和私有和靜態方法。

多態的擴展

我們知道多態只能控制父類的方法,對于子類擴展開來的方法是不能進行操作的,但是我們肯定會遇到這種情況。那么在這個時候我們就不能再使用向上轉換了,使用向下轉換。但是這里面有一個問題,就是我們不知道這個類型是不是這樣你轉化的類型,會出現轉換出錯的問題,這個在c++里面是不安全的,但是Java里面有一個機制,就是在向下轉換的時候一定要強制轉換進行檢查,這樣就可以達到安全控制,如果不是會報一個ClassCastException的錯誤。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/76664.html

相關文章

  • JavaScript面向對象編程

    摘要:基本概念面向對象編程是用抽象方式創建基于現實世界模型的一種編程模式。使用面向對象編程是為了促進更好的靈活性和可維護性。面向對象與面向過程比較,面向過程更注重過程。 1:基本概念 面向對象編程是用抽象方式創建基于現實世界模型的一種編程模式。 這句話的意思是:每個對象能夠接受信息,處理數據和發送消息給其他對象;這就意味著在這個編程模式下,每一個對象都是一個獨立的個體,它可以接收,可以處理,...

    Carbs 評論0 收藏0
  • java-工具類Collections和Arrays的設計和區別

    摘要:排序的算法是歸并排序。舉個例子,的算法可以不是使用歸并排序,但是該算法一定要是穩定的。這個類是的一部分。官方這個類只包含操作或返回集合的靜態方法。具體來說是,第一步,先把集合轉換為數組,第二步,調用。和沒有什么區別,只是傳參有點不同。 Arrays 1.作用看類的名字,就知道是對數組(數據類型[])進行各種操作。例如,排序、查找、復制等。 排序的算法是歸并排序。查找的算法是二分查找。復...

    mj 評論0 收藏0
  • [CS101] Programming Languages and OOP 編程語言及面向對象基礎題

    摘要:編程語言及面向對象基礎題 編程語言及面向對象基礎題 Design Pattern What is singleton? Whats its cons and pros? How to implement it?Definition: Singleton pattern is a design pattern that ensure that only one instance of a...

    Drinkey 評論0 收藏0
  • Java Interview Questions (1)

    What is Java? Java is a high-level platform-independent object oriented programming language. List some features of Java? Object Oriented, Platform Independent, Multi-threaded, Interpreted, Robust, pa...

    xuxueli 評論0 收藏0
  • [譯] PureScript: 一門編譯到 JavaScript 的 Haskell 方言

    摘要:原文是一門編譯到的強類型靜態類型語言它的功能受到的激發并且使用編寫其目標是編譯到同時保持清潔跟可讀而且根據作者所說具備跟其他編譯到的語言相互操作的能力繼承了當中一些突出的功能其中有類型推斷允許在任何可能的地方減少類型聲明的書寫一種類型構 原文: http://www.infoq.com/news/2014/09/purescript-haskell-javascript PureS...

    陳江龍 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<