Java基礎(chǔ) 快速學(xué)習(xí)(一)

注意: 本系列博客是在作者已經(jīng)有一年多的C++經(jīng)驗(yàn)的基礎(chǔ)上學(xué)習(xí)Java的個(gè)人總結(jié),可能并不適合所有看到這篇博客的人。

一、數(shù)據(jù)類型

1.整數(shù):byte,short,int,long 分別對(duì)應(yīng)1,2,4,8字節(jié)長(zhǎng)度
數(shù)據(jù)的范圍和寫法 與 C++一致

byte a=1;
int b=2;

注意:java中是沒(méi)有unsigned類型 這個(gè)需要和C++區(qū)別 也就是說(shuō)Java中的數(shù)都是有符號(hào)的
2.浮點(diǎn)數(shù):double ,float 這個(gè)與c++基本一致 ,區(qū)別在于 float 常量的語(yǔ)法更加嚴(yán)格一些 。
在java中 float a=1.235f; 如果沒(méi)有后邊的f就會(huì)報(bào)錯(cuò)
在C++中 float b=1.235; 如果沒(méi)有后邊的f 編譯器會(huì)發(fā)出警告 ,說(shuō) double 截?cái)喑?float ,并沒(méi)有報(bào)錯(cuò)。因?yàn)樵赾++中 浮點(diǎn)常量默認(rèn)為double ,如果希望是float,則需要加f。
3.布爾類型:boolean 有兩個(gè)字面常量true ,false
注意:java中boolean類型與int類型是不可以通用的!boolean就是它,不是c++中所謂的0與非0;

二、表達(dá)式

1.算術(shù)表達(dá)式 略 與c++一致;
2.關(guān)系表達(dá)式 寫法與c++一致,需要注意的還是boolean問(wèn)題 其運(yùn)算結(jié)果不是0也不是1;
3.條件表達(dá)式 cond? expr1:expr2; 寫法同c++,需要注意的還是boolean問(wèn)題 cond必須是boolean;
4.邏輯表達(dá)式 同c++;

三、語(yǔ)句

java語(yǔ)句和c++語(yǔ)句基本一致 ,需要注意的還是 boolean問(wèn)題

1.if

boolean a=true;if(a){ // .......}

2.for

for(int a=0;a<10;a++){ // .. do something}
3.while

while(true){ //......}

4.switch

int cc=1;
switch (cc)
{   
  case 1:       
  a++;      
  break;    
  case 2:       
  a++;      
  break;
}

ps:C++中如果switch分支超過(guò)4個(gè)的話,編譯器會(huì)對(duì)其進(jìn)行優(yōu)化,使其效率高于4個(gè)連續(xù)if語(yǔ)句,才能發(fā)揮出switch的正真優(yōu)勢(shì)(vs編譯器,其他編譯器可能不同)。具體優(yōu)化細(xì)節(jié),感興趣的請(qǐng)百度。那么Java中它的效率如何,作者并不太知道,因?yàn)樵诔鯇W(xué),就為讀者和自己留的問(wèn)題吧。
四、類的基本特性
1.類的語(yǔ)法
在Java中類是很簡(jiǎn)單的 ,與c++也略有區(qū)別
區(qū)別【1】成員變量 每個(gè)變量前 加訪問(wèn)控制 。
【2】成員函數(shù) 每個(gè)函數(shù)前 同樣加訪問(wèn)控制
【3】可以直接給成員變量賦值初始化

package my;public class Example{ public int id=0; public int s=1; //成員函數(shù) public int getid() { return this.id; } public int setid(int id) { this.id=id; return 0; } public int print() { System.out.println(this.id); return 0; } }
注意:類名要同文件名,且每個(gè)文件中僅有一個(gè)類!
2.類的構(gòu)造函數(shù)
【1】與類同名
【2】無(wú)返回值
【3】可以重載

package my;
public class Example{   
public int id=0;    
public int s=1;     //成員函數(shù)  
public Example()    
{               
    id=10;  
}   
    
public Example( int a)  
{       
    id=a;   
}   
    
public int getid()  
{       
    return this.id; 
}   
    
public int setid(int id)
{       
    this.id=id;     
    return 0;   
}   
    
public int print()  
{       
    System.out.println(this.id);        
    return 0;   
}   
}

注意 :java中是沒(méi)有析構(gòu)函數(shù)的 ,java中存在垃圾回收機(jī)制。如需做清理工作,直接自己實(shí)現(xiàn)一個(gè)成員函數(shù)并且在需要的時(shí)候調(diào)用 五、垃圾回收機(jī)制當(dāng)一個(gè)對(duì)象不在被引用時(shí),該對(duì)象將被gc回收public void t(){ Example ex=new Example() ex.print()}當(dāng)t()退出后 創(chuàng)建的對(duì)象就失去作用 關(guān)于垃圾回收的比較詳細(xì)的理解 參考這篇文章關(guān)于回收機(jī)制,隨著我對(duì)Java的理解深入 也會(huì)單獨(dú)做一篇理解
六、數(shù)組對(duì)象Java中數(shù)組是對(duì)象! what? 沒(méi)錯(cuò) 在c++中 數(shù)組是復(fù)合類型,不過(guò)在STL中也提供了類似的模板類 vector 不過(guò)這個(gè)類付出的代價(jià)的效率稍低,c++11中array提供了同數(shù)組一樣的效率且更加安全 。在Java中 所有的對(duì)象都必須new來(lái)創(chuàng)建 int [] a=new int [10];int [] b={1,2,3,4};注意:數(shù)組用c++數(shù)組同樣支持下標(biāo)訪問(wèn)讀寫,標(biāo)號(hào)0~n-1當(dāng)然,還有一系列的成員。。。注意:數(shù)組對(duì)象的創(chuàng)建,僅僅是創(chuàng)建了N個(gè)對(duì)象的null指針

Example[] v=new Example[10];
if(v[0]==null)
{
    System.out.println("空");
}

歡迎訪問(wèn)個(gè)人技術(shù)網(wǎng)站:http://www.breeziness.cn/
轉(zhuǎn)載請(qǐng)注明出處 小風(fēng)codec --- www.breeziness.cn

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,853評(píng)論 18 399
  • 小編費(fèi)力收集:給你想要的面試集合 1.C++或Java中的異常處理機(jī)制的簡(jiǎn)單原理和應(yīng)用。 當(dāng)JAVA程序違反了JA...
    八爺君閱讀 5,239評(píng)論 1 114
  • Win7下如何打開DOS控制臺(tái)? a:開始--所有程序--附件--命令提示符 b:開始--搜索程序和文件--cmd...
    逍遙嘆6閱讀 1,723評(píng)論 4 12
  • 什么是基金:就是專業(yè)的人幫你去投資 基金有什么好處:根據(jù)投資的種類不同所所獲的收益也不同。 我們?yōu)槭裁慈ベI基金: ...
    緣是你的俊閱讀 475評(píng)論 0 4
  • 有些人活著,但他已經(jīng)死了。 10月23日 星期一 晴 文/筿筿 最近幾天沒(méi)有寫文。活得如同行...
    筿筿閱讀 1,147評(píng)論 2 5

友情鏈接更多精彩內(nèi)容