[OCAJP]保護物件欄位

Given:

This class needs to protect an invariant on the sum field.

Which three members must have the private access modifier to ensure that this invariant is maintained?

A. The x field
B. The y field
C. The sum field
D. The ComputerSum ( ) constructor
E. The setX ( ) method
F. The setY ( ) method

題解

只有在選項C、D、E、F內會更動到sum欄位的值,但是選項D是建構子,在物件實體化的時候才會執行,實體化之就不能再被呼叫了,也就再也沒有機會可以去更動sum欄位的值。

因此去掉選項D之後,答案便是選項C、E、F

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章