欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Java新手常犯的錯(cuò)誤有哪些

本篇內(nèi)容主要講解“Java新手常犯的錯(cuò)誤有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Java新手常犯的錯(cuò)誤有哪些”吧!

公司主營業(yè)務(wù):成都網(wǎng)站制作、做網(wǎng)站、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出仁和免費(fèi)做網(wǎng)站回饋大家。

Java錯(cuò)誤,主要包括兩方面,一種是語法錯(cuò)誤,另一種是邏輯錯(cuò)誤。

語法錯(cuò)誤,也就是我們的編碼不符合java 規(guī)范,在編譯的時(shí)候無法通過。通常,我們都是用javac編譯我們的源程序,如果代碼中存在語法錯(cuò)誤,比如某個(gè)表達(dá)式后缺少分號(hào)的時(shí)候,編譯器就會(huì)告訴我們錯(cuò)誤信息,編譯就此停止。

邏輯錯(cuò)誤,也就是我們常說的Bug,一般存在邏輯錯(cuò)誤的程序都是可以順利的被編譯器編譯產(chǎn)生相應(yīng)的字節(jié)碼文件,也就是class文件。但是,在執(zhí)行的時(shí)候,也就是java ourClass的時(shí)候,得出的結(jié)果并不是我們所希望的。

下面幾個(gè)問題都是非常常見的錯(cuò)誤,在一些新手的代碼里面經(jīng)常會(huì)出現(xiàn)的。

1、 Java是分大小寫的

對(duì)于經(jīng)常寫VB、Asp程序的人來說,一定要注意,變量money和Money是不一樣的。

2、一個(gè)java源文件可以包含多個(gè)class,但是只能包含一個(gè)public 的class。

java是面向?qū)ο蟮某绦蛘Z言,編譯完的字節(jié)碼也是一個(gè)一個(gè)的類,就是class。一個(gè).java文件可以包含多個(gè)class,在編譯的時(shí)候,編譯器會(huì)為每一個(gè)class生成相應(yīng)的class文件。 但是必須要注意,一個(gè).java文件只能包含一個(gè)public class,而且這個(gè)public class的類名要與這個(gè).java的文件名一致。

比如,正確的寫法應(yīng)該是下面這樣的:

一個(gè)java源文件,文件名為 Test.java,內(nèi)容如下:

class A  {  }  class B  {  }  public class Test  {  }

3、運(yùn)行java程序時(shí)加了.class

運(yùn)行java程序時(shí),是不需要i加擴(kuò)展名.class的,比如

c:\javac A.java

c:\java A 而不應(yīng)該是java A.class

這是因?yàn)閖ava默認(rèn)就是找后綴是class的文件,如果你加了.class,也就是java A.class的話,就會(huì)出現(xiàn) 錯(cuò)誤:

Exception in thread HelloWorld/class "main" java.lang.NoClassDefFoundError

意思就是找不到這個(gè)類,因?yàn)閖ava會(huì)把A.class當(dāng)成一個(gè)包的寫法,就是去A目錄下找class這個(gè)類,自然找不到,所以就出錯(cuò),錯(cuò)誤信息和你classpath設(shè)置不正確的提示信息是一樣的。

4、一個(gè)等號(hào)和兩個(gè)等號(hào)的不同

在Java程序中,一個(gè)等號(hào)是賦值操作符,而兩個(gè)等號(hào)則是比較操作符。在 java新手的程序中

經(jīng)常出現(xiàn)這樣的代碼:

int a=1;  int b=2;  if(a=b) System.out.println("OK");

這樣是不對(duì)的,因?yàn)閕f后面需要得到的是一個(gè)布爾類型的值,這樣編譯就會(huì)出錯(cuò)。

因?yàn)椋琣=b,是賦值操作,就是把 b的值賦給了a,返回等號(hào)右邊的值,也就是b的值,比如:

int a=1;  int b=2;  int c=(a=b);  System.out.println("a : "+a);  System.out.println("b: "+b);  System.out.println("c: "+c);

輸出結(jié)果則是,a等于2,b等于2,c也等于2, 明白了嗎?

所以,看看下面這兩段代碼,如果你明白了,也就說明你已經(jīng)懂得了一個(gè)等號(hào)和兩個(gè)等號(hào)的意思了:

boolean a=false;  boolean b=false;  if(a==b)   {  System.out.println("a=b");  }  else {  System.out.println("a!=b");  }

結(jié)果輸出“a=b”,如果換成一個(gè)等號(hào)

boolean a=false;  boolea b=false;  if(a=b)   {  System.out.println("a=b");  }  else {  System.out.println("a!=b");  }

則輸出結(jié)果為“a!=b”

5、java中的數(shù)組下標(biāo)是從0開始的

比如我們定義了一個(gè)數(shù)組

Object[] myArray=new Object[10],說明數(shù)組中有10個(gè)元素,是從myArray[0]開始,到myArray[9]結(jié)束的在用for循環(huán)的時(shí)候,需要注意,正確寫法如下:

for(int i=0;i<myArray.length;i++)  {  }

6、空引用的錯(cuò)誤

這類錯(cuò)誤也是最令人頭疼的,屬于邏輯性錯(cuò)誤,編譯器可以正常編譯,但是在某種情況下執(zhí)行出錯(cuò),出錯(cuò)信息是 java.lang.NullPointerException 。

這是由于在對(duì)象的引用沒有被初始化的情況下而調(diào)用這個(gè)對(duì)象的屬性或者方法而造成的,比如下面的例子:

class A3   {  public static void main(String[] args)   {  String s=null;  int a=1;  int b=2;  if(a<b)  {  s="a<b";  }  System.out.println(s.toString());  }  }

編譯和執(zhí)行都沒有錯(cuò)誤,可是如果把a(bǔ)的值賦為10,如下:

class A3   {  public static void main(String[] args)   {  String s=null;  int a=10;  int b=2;  if(a<b)  {  s="a<b";  }  System.out.println(s.toString());  }  }

那么就可以正常編譯通過,但是執(zhí)行的時(shí)候則出錯(cuò)。就是因?yàn)楝F(xiàn)在a<b不成立,也就是說沒有執(zhí)行s="a<b"這個(gè)初始化語句,所以在輸出s.toString()的時(shí)候,對(duì)象s其實(shí)還是null,沒有被初始化,這時(shí)候調(diào)用.toString()方法自然會(huì)出現(xiàn)異常。

到此,相信大家對(duì)“Java新手常犯的錯(cuò)誤有哪些”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)站欄目:Java新手常犯的錯(cuò)誤有哪些
文章源于:http://www.chinadenli.net/article10/jogcdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)品牌網(wǎng)站制作外貿(mào)建站網(wǎng)站排名云服務(wù)器手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)