Java特性隨便看看(封裝)
?
?
一、軟件開(kāi)發(fā)
?
??? 1、軟件開(kāi)發(fā)四個(gè)要求:
?
??? 正確性 ←→ 快速開(kāi)發(fā)
??? 效率?? ←→ 通用性
?
?
二、面向?qū)ο蟪绦蛟O(shè)計(jì)特點(diǎn)
?
??? 1、封裝
?
??? 將程序分成具有有限交互的不同組件。封裝組件的一個(gè)例子是方法:其他的方法只通過(guò)它們傳遞給這個(gè)方法的參數(shù)以及這個(gè)方法返回的值與它交互。可以單獨(dú)測(cè)試每個(gè)組件,從而提高正確性;并且可以把重新組合進(jìn)新程序中,從而提高了通用性,并加快了開(kāi)發(fā)速度。
?
??? 2、多態(tài)性
?
??? 指相同的單詞或符號(hào)在不同的環(huán)境中指代不同的事情的能力。例如在Java中處理數(shù)字時(shí)“+”表示加法,而在處理字符串時(shí),又表示連接。多態(tài)性極大地提高了通用性,這反過(guò)來(lái)又提高了正確性,并加快了開(kāi)發(fā)速度。
?
??? 3、繼承
?
??? 是指某個(gè)程序類似于另一個(gè)程序,從而只描述它們之間區(qū)別的能力。例如:鴨嘴獸與其他哺乳動(dòng)物都非常相像,只不過(guò)它會(huì)下蛋。繼承使代碼更加容易重用,從而提高正確性、通用性,并加快了開(kāi)發(fā)速度。
?
?
三、封裝
?
??? 1、指定變量時(shí):
?
????? public表示為公共變量,private為實(shí)例變量。實(shí)例變量一般都聲明為私有,避免其他類中的方法對(duì)其訪問(wèn)。
????? 實(shí)例變量必須要申明實(shí)例后才可以引用
?
??? 2、構(gòu)造函數(shù):
?
????? 用于設(shè)定實(shí)例創(chuàng)建時(shí)的默認(rèn)值,構(gòu)造函數(shù)是一個(gè)與類名完全相同的方法
?
??? 3、封裝的基礎(chǔ):
?
????? 訪問(wèn)器(accessor)/讀取器(getter)
????? get Test(){
??????? return this.Test;
????? }
?
????? 修改器(mutator)/設(shè)置器(setter)
????? set Test(int Test){
??????? this.Test=Test;
????? }
?
????? 注:用this標(biāo)注是為了與傳入的參數(shù)Test區(qū)分出來(lái),this引用的是field
?
??? 4、toString()方法
?
????? toString()方法是返回String的方法,而且方法名必須是toString
????? 這樣可以在創(chuàng)建實(shí)例后,直接使用 System.out.println(instance_name); 就可以打印,而不用明確指明調(diào)用該方法。
?
????? 主要是由于這個(gè)方法用到得很多,幾乎每個(gè)類中都有這個(gè)方法,所以可以省略
?
??? 5、輸入方法類java.util.Scanner
?
????? 用于鍵盤輸入的API,具體用法大致如下:
?
????? Scanner cin = new Scanner(System.in);??
????? int a = cin.nextInt(),b=cin.nextInt();
????? int a = cin.nextInt(),b=cin.nextInt();
????? System.out.println(a+b);
?
?