封裝的好處及步驟 什么是封裝類?
什么是封裝類?類的封裝意味著類的成員變量不能被外部類隨意修改。定義類的成員時,使用private關(guān)鍵字指定成員的訪問權(quán)限,只能由類的其他成員方法調(diào)用,不能由其他類中的方法調(diào)用;為了實現(xiàn)封裝,通常將類的
什么是封裝類?
類的封裝意味著類的成員變量不能被外部類隨意修改。定義類的成員時,使用private關(guān)鍵字指定成員的訪問權(quán)限,只能由類的其他成員方法調(diào)用,不能由其他類中的方法調(diào)用;為了實現(xiàn)封裝,通常將類的成員變量聲明為private,然后通過public方法訪問。
對于變量的操作,通常有讀取和分配操作。我們通常定義兩種方法來實現(xiàn)這兩種操作,即getxxx()和setxxx()。類是一個模塊。我們應(yīng)該讓模塊只公開必須為外界所知的內(nèi)容,而隱藏所有其他內(nèi)容。再次編程時,應(yīng)盡量避免一個模塊直接修改或操作另一個模塊的數(shù)據(jù)。模塊化設(shè)計追求強內(nèi)聚、弱封裝,即隱藏對象的屬性和實現(xiàn)細(xì)節(jié),只暴露接口,控制讀取和修改程序中屬性的訪問級別,將抽象數(shù)據(jù)與行為(或函數(shù))結(jié)合起來,形成一個具有可擴展性的系統(tǒng)整個機器是數(shù)據(jù)和操作數(shù)據(jù)源代碼的有機結(jié)合,形成一個“類”,其中數(shù)據(jù)和函數(shù)是類的成員。
1. 面向?qū)ο蠓庋b的主要功能是解決程序的可擴展性問題。它可以在不影響其他部分的情況下進(jìn)行修改或封裝,以擴展整個程序。
2. 如何封裝
一般用類來封裝。在類中,使用private修改屬性以使其他類看不到它們。示例:
class person{
private string name
private int age
public void tell(){系統(tǒng)輸出打印(“Name:”Name“age)]}]}]當(dāng)在類內(nèi)部訪問這些屬性時,需要使用此關(guān)鍵字。封裝屬性后,其他類無法訪問它們。因此,我們需要實現(xiàn)這個屬性的get和set方法,以便可以從外部訪問它們。
public void setName(字符串名){這個名字=Name//使用this關(guān)鍵字訪問
}
public string getname(){
return Name
}
]那么這個set/get方法會破壞封裝嗎?
不。Set/get方法是封裝的一個實施例。將財產(chǎn)私有化,提供公共方法來訪問和設(shè)置財產(chǎn),并在get和set方法中設(shè)置條件來控制財產(chǎn),以防止財產(chǎn)被賦予一些非法價值。
設(shè)置set/get方法后,類中的方法還應(yīng)調(diào)用set/get方法來設(shè)置/獲取屬性值。
公共void tell(){系統(tǒng)輸出打?。ā癗ame:”getname()“age:”getage())]}