計算機程序設計

Java對象模型的要素:一個抽象類,接口

抽象類的主要思想是包含在下面的論文:有時需要沒有烹飪課程,並且在“濕”的形式。 這種坯件不能被直接使用(實例化)。

什麼是Java中的抽象類

考慮另一個例子。 有一個在java.util包一個Java抽象類日曆。 它不實現特定的日曆,它被使用,例如,在西歐和東歐,中國,朝鮮,泰國等,但它確實有許多有用的功能,如添加了幾天到一個特定的日期。這些功能所必需的任何實現日曆。 這是不可能產生抽象類的副本。

抽象類,抽象Java方法

假設你要開發多種圖形元素,例如,幾何形狀:..一個圓,矩形,明星等。還有是吸引他們的容器。 外觀的每個分量是不同的,因此適當的方法(即使它被稱為塗料)被實現不同。 然而,每個組件有許多相似之處:..圖中應包含在框中可以有一個顏色是可見和不可見的,等等。換句話說,你需要創建一個父類所有的這些數字,其中每個組件繼承的一般屬性。 但是關於paint方法是什麼? 畢竟,父類沒有可視化表示。 如果你在每類中聲明一個paint方法獨立,這將是分析處理什麼成分必要,然後執行轉換。 因此,該方法必須聲明父類摘要:該方法設置標題沒有身體。 每個派生類的身體會形容自己。 在Java中, 抽象類 可以進入抽象方法。

如果一個類有抽象方法,該類是抽象的。 之前詞類把方法的關鍵詞摘要,標題 - 太多。 這種方法的稱號後,需要放一個分號。 在Java中,抽象類不能產生拷貝。 如果我們要禁止他們的創作,即使是類的沒有抽象方法,這個類可以聲明抽象。 但是,如果類至少有一個抽象方法,這個類必須是抽象的。 這是不可能的課是和抽象的是,和最終和方法了。 該方法不能是抽象的,私人的,靜態的,天然的。 要繼承一個可以宣布非抽象和實例,他們必須實現父的所有抽象方法。 類本身可以使用它的抽象方法。

例如:

  • 抽象類ACLASS {
  • 公共抽象無效方法(INT A) ;
  • }
  • 類BClass延伸ACLASS {
  • 公共無效方法(INT A){
  • //體
  • }

允許的變量,如抽象類。 可以參考這個類的一個非抽象的兒童或者為空。

接口在Java中 - 替代多重繼承

在Java中,沒有多重繼承,因為那樣的話也有一定的問題。 類不能從多個類繼承。 但是,他可以實現多個接口。

Java接口和抽象類 - 的概念相似,但不完全相同。 該接口可以聲明為public,那麼它是提供給所有的,或者可以省略修飾符公眾,那麼接口僅適用內的包。 摘要關鍵字不是必需的,因為接口等是抽象的,但你可以指定。

接口的聲明

它以一個標題,可以先去關鍵字public,然後 - 字接口。 然後可以有一個字擴展和傳輸接口,從該繼承這一點。 它不允許重複,並且它不可能形成的繼承關係的循環比。 接下來是接口主體,大括號括起來。 在接口元件的主體聲明:字段常量和抽象方法。 所有字段都是公開的最終靜態 - 所有這些改進劑是沒有必要的。 所有的方法都被認為是公共抽象 - 這些修飾也可以指定。 現在,足以說大約從Java接口的抽象類的區別。

  • 公共接口AI延伸B,C,D {
  • //體
  • }

要聲明一個類接口的繼承人,需要使用關鍵字工具:

  • 類ACLASS實現BI,CI,DI {}

也就是說,如果類聲明實現指定的接口名稱,它的類實現後。 這個類的繼承人得到它的元素,因此也把它賣掉。

一個接口類型的變量也被允許。 他們可以是指一個類型,實現了這個接口,或空之類的。 這樣變量具有對象類中的所有元素,這是因為目的是通過類生成,並且它們,反過來,從對象類派生。

在這篇文章中,我們討論了Java對象模型的某些元素 - 抽象類,抽象方法接口。

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 zhtw.atomiyme.com. Theme powered by WordPress.