2015-10-11 42 views
3

當我們聲明所有變量和方法在一個類爲final,我們被限制覆蓋的概念。關於final類

那麼,「什麼是我們要限制的原因是-A在OOP語言的關係(甚至我們限制IS-A的關係,這種語言已經有-A的關係)通過使用final類?」

我的觀點是,我們不能限制我們班的訪問成員的任何方式,然後使IS-A關係,給一個簡單的訪問。 否則,創建對象和所有對象都是頭疼的事情? (在我看來,「訪問」不包括修改)

如果我錯過的節目的任何重要的主題,請原諒我。告訴我,它是什麼?

回答

1

是否有必要聲明一個類爲final類?

必要性,沒有。如果你想禁止擴展它,則聲明一個類最終。 這可以防止編程錯誤。 例如,它是一個推薦的做法使公用事業類只有靜態方法爲final, 從這樣的類繼承就沒有意義, 和明確一個編程錯誤。

0

是否有必要聲明一個類爲final類?

是。如果您使用class實施Singleton pattern。如果某人可以對你的Singleton進行子類化,那麼可能會有多個子類(這違反了Singleton模式)。