① java中的public classa是什麼意思為什麼只能有一個謝謝
public class是公共類的意思,public 是訪問修飾符.為什麼只有一個,java規定,一個類文件,public 修類的class只有一個,並且類名必須和你新建的這個類文件名一樣,所以一個類文件中可以有多個類,但由public修飾的類只能有一個。
(1)javaclasspublic擴展閱讀:
Java具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點 。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。
編程工具
Eclipse:一個開放源代碼的、基於Java的可擴展開發平台 。
NetBeans:開放源碼的Java集成開發環境,適用於各種客戶機和Web應用。
IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。
MyEclipse:由Genuitec公司開發的一款商業化軟體,是應用比較廣泛的Java應用程序集成開發環境 。
EditPlus:如果正確配置Java的編譯器「Javac」以及解釋器「Java」後,可直接使用EditPlus編譯執行Java程序 。
工作原理:
由四方面組成:
(1)Java編程語言
(2)Java類文件格式
(3)Java虛擬機
(4)Java應用程序介面
參考資料:網路:java
菜鳥網:Java基礎語法
Java從入門到精通(第3版):清華大學出版社:豆瓣
② java 里開頭的public 和public class有什麼區別
public
可以修飾method、field、class
表示這些為共有,可以被別的class、method來進行訪問;
public
class
表示定義一個類為公有類,那麼當前這個公有類中如果有main函數,這個時候就它的類名,和文件名要完全一致。比如。Test.java為文件名
那麼裡面的類定義要為
public
class
Test{
public
static
void
main(String[]
args){
}
}
class
用來定義一個類,這個類可以寫和自己所在的文件的名稱不一致。比如:
Test.java為文件名,裡面有兩個類
其中一個
class
A{
public
A(){
System.out.println("Aaaaa");
}
}
public
class
Test{
public
static
void
main(String[]
args){
A
a
=
new
A();
}
}
③ java中什麼是公共類
public class,公共類,顧名思義,就是大家都能去訪問的類,可以通過該類的實例化對象進行一系列操作。比如public class Student{...},我在其他類中需要用到Student類中的一些方法時,我可以先實例化一個Student類的對象,Student student1 = new Student(); 然後通過 實例化對象.方法名 既student1.方法名 去進行調用。
④ Java中class的前面添加public和不添加public的區別
Java中class的前面添加public和不添加public的區別:
需要知道的是修飾類和變數的用來控制這個被修飾的類和變數的適用范圍的修飾詞有:
1.public:表示公開的類和變數,既所有的類都可以引入使用的。
2.protected:表示受保護的類,只有子孫類和本類可以引入使用。
默認:表示同包中和本類中可以引入使用。
3.private:表示私人的,只有在本類中可以引入使用。
所以顯而易見,如果一個class前面如果添加了public修飾則可以被所有類引入使用,如果沒有
加任何修飾詞,那麼就只能夠被同包中的類和本類引入使用。
⑤ 請問java中,class前的public是什麼意思是指公有繼承嗎
java中的修飾符分為類修飾符,欄位修飾符,方法修飾符。根據功能的不同,主要分為以下幾種。
1、許可權訪問修飾符
public,protected,default,private,這四種級別的修飾符都可以用來修飾類、方法和欄位。
包外 子類 包內 類內
public yes yes yes yes
protected no yes yes yes
default no no yes yes
private no no no yes
2、final修飾符
final的意思是不可變,他可以修飾類、欄位、方法。修飾類後類不能被擴展(extends),也就是不能被繼承。修飾欄位後欄位的值不能被改變,因此如果有final修飾欄位,應該對欄位進行手動初始化。修飾方法後該方法不能被改變,也就是重寫。
3、abstract修飾符
abstract是抽象的意思,用來修飾類和方法,修飾類後,該類為抽象類,不能被實例化,必需進行擴展。修飾方法後,該方法為抽象方法必須被子類重寫(override)。
4、static修飾符
static用來修飾內部類,方法,欄位。修飾內部類說明該內部類屬於外部類而不屬於外部類的某個實例。修飾欄位說明該欄位屬於類而不屬於類實例。修飾方法說明該方法屬於類而不屬於類實例。
類修飾符
Public
可以從其他類中訪問
obstract
本類不能被實例化
final
不能再聲明子類
構造器修飾符
Public
可以從所有的類中訪問
Protected
只能從自己的類和它的子類中訪問
Private
只能在本類中訪問
域修飾符
Public
可以從所有的類中訪問
Protected
只能從本類和它的子類中訪問
Private
只能從本類中訪問它
Static
對該類的所有實例只能有一個域值存在
transient
不是一個對象持久狀態的一部份
Volatile
可以被非同步的線程所修改
final
必須對它賦予初值並且不能修改它
局部變數修飾符
final
必須對它賦予初值並且不能修改它
方法修飾符
Public
可以從所有的類中訪問它
Protected
只能從本類及其子類中訪問它
Private
只能從本類中訪問它
abstract
沒有方法體,屬於一個抽象類
final
子類不能覆蓋它
static
被綁定於類本身而不是類的實例
native
該方法由其他編程語言實現
asnchronized
在一個線程調用它之前必須先給它加
、、、、、、、、、、、、、、、、
關於Java中各種修飾符與訪問修飾符的說明
類:
訪問修飾符 修飾符 class 類名稱 extends 父類名稱 implement 介面名稱
(訪問修飾符與修飾符的位置可以互換)
訪問修飾符
名稱
說明
備注
public
可以被所有類訪問(使用)
public類必須定義在和類名相同的同名文件中
package
可以被同一個包中的類訪問(使用)
默認的訪問許可權,可以省略此關鍵字,可以定義在和public類的同一個文件中
private
修飾內部類
修飾符
名稱
說明
備注
final
使用此修飾符的類不能夠被繼承
abstract
如果要使用abstract類,之前必須首先建一個繼承abstract類的新類,新類中實現abstract類中的抽象方法。
類只要有一個abstract方法,類就必須定義為abstract,但abstract類不一定非要保護abstract方法不可
變數
l Java中沒有全局變數,只有方法變數、實例變數(類中的非靜態變數)、類變數(類中的靜態變數)。
l 方法中的變數不能夠有訪問修飾符。所以下面訪問修飾符表僅針對於在類中定義的變數。
l 聲明實例變數時,如果沒有賦初值,將被初始化為null(引用類型)或者0、false(原始類型)。
l 可以通過實例變數初始化器來初始化較復雜的實例變數,實例變數初始化器是一個用{}包含的語句塊,在類的構造器被調用時運行,運行於父類構造器之後,構造器之前。
l 類變數(靜態變數)也可以通過類變數初始化器來進行初始化,類變數初始化器是一個用static{}包含的語句塊,只可能被初始化一次。
訪問修飾符
名稱
說明
備注
public
可以被任何類訪問
protected
可以被同一包中的所有類訪問
可以被所有子類訪問
子類沒有在同一包中也可以訪問
private
只能夠被 當前類的方法訪問
預設
無訪問修飾符
可以被同一包中的所有類訪問
如果子類沒有在同一個包中,也不能訪問
修飾符
名稱
說明
備注
static
靜態變數(又稱為類變數,其它的稱為實例變數)
可以被類的所有實例共享。
並不需要創建類的實例就可以訪問靜態變數
final
常量,值只能夠分配一次,不能更改
注意不要使用const,雖然它和C、C++中的const關鍵字含義一樣
可以同static一起使用,避免對類的每個實例維護一個拷貝
transient
告訴編譯器,在類對象序列化的時候,此變數不需要持久保存
主要是因為改變數可以通過其它變數來得到,使用它是為了性能的問題
volatile
指出可能有多個線程修改此變數,要求編譯器優化以保證對此變數的修改能夠被正確的處理
方法
訪問修飾符 修飾符 返回類型 方法名稱(參數列表)throws 違例列表
l 類的構造器方法不能夠有修飾符、返回類型和throws子句
l 類的構造器方法被調用時,它首先調用父類的構造器方法,然後運行實例變數和靜態變數的初始化器,然後才運行構造器本身。
l 如果構造器方法沒有顯示的調用一個父類的構造器,那麼編譯器會自動為它加上一個默認的super(),而如果父類又沒有默認的無參數構造器,編譯器就會報錯。super必須是構造器方法的第一個子句。
l 注意理解private構造器方法的使用技巧。
訪問修飾符
名稱
說明
備注
public
可以從所有類訪問
protected
可以被同一包中的所有類訪問
可以被所有子類訪問
子類沒有在同一包中也可以訪問
private
只能夠被當前類的方法訪問
預設
無訪問修飾符
可以被同一包中的所有類訪問
如果子類沒有在同一個包中,也不能訪問
修飾符
名稱
說明
備注
static
靜態方法(又稱為類方法,其它的稱為實例方法)
提供不依賴於類實例的服務
並不需要創建類的實例就可以訪問靜態方法
final
防止任何子類重載該方法
注意不要使用const,雖然它和C、C++中的const關鍵字含義一樣
可以同static一起使用,避免對類的每個實例維護一個拷貝
abstract
抽象方法,類中已聲明而沒有實現的方法
不能將static方法、final方法或者類的構造器方法聲明為abstract
native
用該修飾符定義的方法在類中沒有實現,而大多數情況下該方法的實現是用C、C++編寫的。
參見Sun的Java Native介面(JNI),JNI提供了運行時載入一個native方法的實現,並將其於一個Java類關聯的功能
synchronized
多線程的支持
當一個方法被調用時,沒有其它線程能夠調用該方法,其它的synchronized方法也不能調用該方法,直到該方法返回
介面訪問修飾符 interface 介面名稱 extends 介面列表
l 介面不能夠定義其聲明的方法的任何實現
l 介面中的變數總是需要定義為「public static final 介面名稱」,但可以不包含這些修飾符,編譯器默認就是這樣,顯示的包含修飾符主要是為了程序清晰
訪問修飾符
名稱
說明
備注
public
所有
無訪問修飾符(默認)
同一個包內
⑥ java中的public class 與class的區別
public class:是JAVA定義的,一般佔到編程的角度來將就是包含main方法的,一個java文件中只有一個public class,而且public class的文件名要跟.java的文件名一致。
class:在Java編程是描述對象的,也就是類。
提示:Java編程就這么定義的,記住就行了,沒什麼特殊的含義。
⑦ Java 編程中 public class 是什麼意思啊
public class是JAVA定義的,一般佔到編程的角度來將就是包含main方法的,一個java文件中。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。
(7)javaclasspublic擴展閱讀:
Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。Java還剔除了C++的操作符過載(overload)和多繼承特徵,並且不使用主文件,免去了預處理程序。
因為Java沒有結構,數組和串都是對象,所以不需要指針。Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。
⑧ JAVA 類定義 class 前為什麼必須要有public
public是一個修飾符,類似的還有default(就是前面什麼也沒有)、protected、private。。
這些東西,是確定了方法的作用域。
例如,用public聲明的類以及方法,則可以被任意的包中使用,其集成的子類也可以使用,
而private則不是,private聲明的方法,只有在該類中才能夠調用,否則會出錯。
這四個修飾符的作用於大小為
public >default >protected>private
第二與第三不太確定。一般我是用public以及pivate比較多。。
一樓的話,你最好就不要相信,因為java的所謂的「介面」,跟他說的相差幾百萬里
⑨ java中可以有幾個public class
一個java文件中只能有一個public class,就是一個.java文件中,只能有一個public class