java - public class與class的區(qū)別詳解
在編寫類的時(shí)候可以使用兩種方式定義類:
public class定義類:
class定義類:
如果一個(gè)類聲明的時(shí)候使用了public class進(jìn)行了聲明,則類名稱必須與文件名稱完全一致。
范例:定義一個(gè)類(文件名稱為:Hello.java)
復(fù)制代碼 代碼如下:
public class HelloDemo{ /pic/p>
public static void main(String args[]){ /pic/p>
System.out.println("HelloWorld!!!"); /pic/p>
}
};
此類使用public class聲明,類名稱是HelloDemo,但是文件名稱Hello.java,所以,此時(shí)編譯時(shí)會(huì)出現(xiàn)如下問題:
復(fù)制代碼 代碼如下:
Hello.java:1 類 HelloDemo 是公共的,應(yīng)在名為HelloDemo.java文件中聲明
public class HelloDemo{ /pic/p>
1、錯(cuò)誤
以上的錯(cuò)誤提示表示:因?yàn)槭褂玫氖莗ublic class聲明,所以類名稱應(yīng)該與文件名稱完全一致,即應(yīng)該使用"HelloDemo.java"表示類的名稱。
如果類的聲明使用了class的話,則類名稱可以與文件名稱不一致,但是執(zhí)行的時(shí)候肯定執(zhí)行的是生成后的名稱。
范例:有如下代碼(文件名稱為:Hello.java)
復(fù)制代碼 代碼如下:
class HelloDemo{
public static void main(String args[]){
System.out.println("HelloWorld!!!");
}
};
文件名稱為Hello.java,文件名稱與類名稱不一致,但是因?yàn)槭褂昧薱lass聲明所以,此時(shí)編譯不會(huì)產(chǎn)生任何錯(cuò)誤,但是生成之后的*.class文件的名稱是和class聲明的類名稱完全一致的:HelloDemo.class
執(zhí)行的時(shí)候不能再執(zhí)行java Hello,而是應(yīng)該執(zhí)行javaHelloDemo
在一個(gè)*.java的文件中,只能有一個(gè)public class的聲明,但是允許有多個(gè)class的聲明
復(fù)制代碼 代碼如下:
public class Hello{
public static void main(String args[]){
System.out.println("HelloWorld!!!");
}
};
class A{};
class B{};
在以上的文件中,定義了三個(gè)類,那么此時(shí)程序編譯之后會(huì)形成三個(gè)*.class文件。
【java - public class與class的區(qū)別詳解】相關(guān)文章:
Java中Class對象詳解03-12
java獲取Class對象的方法09-14
java的Class類有哪些07-31
Java Class文件是什么11-19
Java語言Class文件是什么01-19
PE Class教案范文09-15
《Unit 12 Dont eat in class》教案11-20
Java與Java web的區(qū)別01-30
- 相關(guān)推薦