訪(fǎng)問(wèn)修飾符的問(wèn)題
前面講到,修飾缺省的成員在 本類(lèi) 和 同包 中訪(fǎng)問(wèn),protected修飾的成員可以在? 本類(lèi)、同包 和 子類(lèi)訪(fǎng)問(wèn)。我在在同一個(gè)包下建立父類(lèi)Animal(成員設(shè)置為default),子類(lèi)都可以繼承,我想是在同一個(gè)包內(nèi)的緣故。
于是我另外建立了一個(gè)包,建立Animal類(lèi)(我將成員設(shè)置成了protected,我以為可以被子類(lèi)繼承)的子類(lèi)Dog類(lèi),eclipse報(bào)錯(cuò),要求我將成員設(shè)置為public,或者用getter方法,這是為什么?protected的范圍不是 本類(lèi)、同包 和 子類(lèi)嗎?
2016-01-30
你也說(shuō)了你自己另外建立了一個(gè)包,這個(gè)包中又建立了 Dog類(lèi) 這個(gè)時(shí)候 Dog 和 Animal 不在同一個(gè)包下面
所以這個(gè)時(shí)候Aniaml 和 Dog 不在同一個(gè)包下面
所以你用protected 修飾的屬性當(dāng)然不能被子類(lèi)繼承。