繼承、封裝、多態、抽象是面向對象編程的四大基本概念,其中封裝尤為重要,因為從我們學習JAVA開始,就基本上接觸了封裝,因為JAVA中的所有程序都是寫在類中的,類也能當做一種封裝。
在面向對象中封裝是指隱藏對象的屬性和實現的細節,僅對外提供公共訪問方式。在類定義中用private關鍵字來實現封裝。封裝有什麼好處?
1.便於使用者正確使用系統,防止錯誤修改屬性
2.有助於系統之間的松耦合,提高系統獨立性
3.提高軟件的可重用性
4.降低了構建大型系統的風險
如何對一個類進行封裝,則需要根據這個類本身的客觀屬性與實際的需要。
比如一個MyTime類
public class MyTime{
public String date;
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//設置日期格式
date= df.format(new Date());
public String getDate() {
return date;
}
//
// public void setDate(String date) {
// this.date = date;
// }
}
顯然這個類是隻提供了顯示系統的時間,不提供外部去修改系統時間的方法。這個也是根據類本身的客觀屬性而言,時間是固有不會人為改變的屬性,當然諸如此類的例子,還有很多。我們只是簡單舉例來表明我們該如何設計類的外部訪問方法。
Java通過private設置私有變量,通過public將變量設置成公開的。
這裡我們之所以將分數和平均分設置成私有變量是為了防止使用者誤操作,而且也不必讓使用者知道有這麼一個變量,只需要讓使用者知道怎麼去設置分數,和獲取平均分就好了。
當然這只是一個很基礎的封裝,如果想封裝出一個好的程序,還得多費一些心思。
尚學堂立志解決中國教育不公平和低效率問題,幫助千千萬萬被傳統教育方式耽誤的人,傳授實用、前沿的知識,成就學員個人理想,為愛你的人和你愛的人創造美好的生活。尚學堂12大精英團隊+各類實戰項目,真正實現1+1>10的目標效果。幫助學員迅速成長,持久騰飛,成就學員“高富帥”人生。
閱讀更多 Java的筆記 的文章