您好,登錄后才能下訂單哦!
這篇文章主要介紹如何實現封裝,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1、封裝是什么?以及為什么要進行封裝?
通常情況下可以給成員變量賦值一些合法但不合理的數值,這種情況在編譯階段和運行階段都不會報錯或給出任何的提示信息,此數值雖然合法但與現實生活不符;為了避免上述問題的發生,就需要對成員變量進行密封包裝處理來保證該成員變量的合法合理性,這種機制就叫做封裝。封裝可以被認為是一個保護屏障,防止該類的代碼和數據被外部類定義的代碼隨機訪問。要訪問該類的代碼和數據,必須通過嚴格的接口控制。
2、如何進行封裝?
(1)私有化成員變量,使用private關鍵字修飾;
(2)提供公有的get和set方法,在方法體中進行合理值的判斷,使用public關鍵字修飾;
(3)在構造方法中使用set方法進行合理值的判斷;
3、事例如下/*Person.java*/
/* 編程實現Person類的封裝 */ public class Person{ //1.私有化成員變量,使用private關鍵字修飾 private String name; private int age; private String country; //使用static關鍵字修飾成員變量表示提升為類層級只有一份被所有對象共享 //public static String country; //3.在構造方法中調用set方法進行合理值的判斷 public Person(){ } public Person(String name, int age, String country){ setName(name); setAge(age); setCountry(country); } //2.提供公有的get和set方法,在方法體中進行合理值的判斷 public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getAge(){ return age; } public void setAge(int age){ if(age > 0 && age < 150){ this.age = age; }else{ System.out.println("年齡不合理!!!"); } } public String getCountry(){ return country; } public void setCountry(String country){ this.country = country; } public void show(){ System.out.println("我是" + getName() + ",今年" + getAge() + "歲了,來自" + getCountry() + "!"); } //自定義成員方法描述吃飯的行為 public void eat(String food){ System.out.println(food + "真好吃!"); } //自定義成員方法描述娛樂的行為 public void play(String game){ System.out.println(game + "真好玩!"); } }
以上是如何實現封裝的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。