❶ 用下列方式定義java的介面,哪個存在錯誤A. interface MyInterface{ int a=1; void methodA(); }
c答案是錯誤的。
其實這道題主要考你兩個知識點
介面中的方法不能有實現體,也就是不能有{}
介面中的成員變數默認都是static final類型的,所以他允許static和final修飾,也可以同時存在
❷ java作業題,都在這里了,希望你幫忙解答下
1選擇題
1,B
2.D
3.D
2.int i = 30;
double d[] = new double[30];
char[] r = new char[30];
int[] i = {3,4,5,6};
float f[] ={2.3F,3.5F,6.6F};
char[] c = new char[3];
3. int類型,最小為0,a[2]
4. double[] d = new double[10];
d[9] = 5.5D;
double result = d[0] + d[1];
5. public static void method1(int n, int m) {
n += m;
method2((int) 3.4);
}
public static int method2(int n) {
if (n > 0)
return 1;
else if (n == 0)
return 0;
else
return -1;
}
6.
public double getPromotion(double amount, double percent)
public void print(int year, int month)
public double sqrt(double d)
public boolean isOdd(int i);
public void printMsg(int times);
public double getLoanMonthlyPayment(double totalMoney, int loanYears, double interest);
public Char toUpperCase(char c);
publicstaticvoidquestion1(){
Scannerscanner=newScanner(System.in);
double[]scores=newdouble[10];
inti=0;
doubletotalScore=0;
while(i<10){
doubled=scanner.nextDouble();
scores[i]=d;
i++;
totalScore+=d;
}
doubleavgScore=totalScore/10;
Arrays.sort(scores);
intindex=Arrays.binarySearch(scores,avgScore);
System.out.println("低於平均成績的"+(index));
System.out.println("高於平局成績的"+(10-index));
scanner.close();
}
publicstaticvoidquestion2(){
double[]scores={10.0,9.0,8.0,10.0,7.0,10.0,9.0,8.0,10.0,7.0};
Arrays.sort(scores);
double[]newScores=newdouble[8];
for(inti=1;i<scores.length-2;i++){
newScores[i-1]=scores[i];
}
doubletotalScore=0;
for(inti=0;i<newScores.length;i++){
totalScore+=newScores[i];
}
System.out.println("得分是"+totalScore);
}
publicstaticvoidquestion3(){
double[]d=newdouble[]{1,2,3,4,5};
doublemin=Double.MAX_VALUE;
doublemax=Double.MIN_VALUE;
for(inti=0;i<d.length;i++){
if(min>d[i]){
min=d[i];
}
if(max<d[i]){
max=d[i];
}
}
System.out.println("最大值"+max);
System.out.println("最小值"+min);
}
publicstaticintaverage(int[]array){
inttotal=0;
for(inti=0;i<array.length;i++){
total+=array[i];
}
returntotal/array.length;
}
publicstaticdoubleaverage(double[]array){
doubletotal=0;
for(inti=0;i<array.length;i++){
total+=array[i];
}
returntotal/array.length;
}
publicbooleanequals(int[]list1,int[]list2){
if(list1==null){
returnfalse;
}
if(list2==null){
returnfalse;
}
if(list1.length!=list2.length){
returnfalse;
}
for(inti=0;i<list1.length;i++){
if(list1[i]!=list2[i]){
returnfalse;
}
}
returntrue;
}
❸ 下列選項中,關於java的抽象方法和抽象類說法錯誤的是( )。
C。
java中的抽象方法是指的只有定義沒有實現的方法。
如介面中定義的方法;如抽象類中用abstract修飾的方法。
new一個實例指向抽象類,這個在JAVA當中叫做多態性。當一個子類的實例指向父抽象類的時候,那麼父抽象類所定義的一個沒有被實例化的對象就可以使用父抽象類當中所有的被子類實現的抽象方法,但是不可以使用子類新加入的方法。
(3)JAVA下列方法頭哪裡有錯誤擴展閱讀:
在抽象類中定義的方法稱為抽象方法,這些方法只有方法頭的聲明,用一個分號來代替方法體的定義,即只定義成員方法的介面形式,沒有具體操作。只有派生類對抽象成員方法的重定義才能真正實現與該派生類相關的操作。
在各子類繼承了父類的抽象方法之後,再分別用不同的語句和方法體來重新定義它,形成若干個名字相同、返回值相同、參數列表相同、目的一致但是具體實現有一定差別的方法。
❹ java下列代碼的錯誤之處並解釋為什麼
轉型錯誤。父類不能強制轉換為子類。
因為子類可能有父類沒有的方法和變數。
❺ 求解java考題
1、下列各項當中哪一個編譯不會出錯? ( C )
A). Byte b = new Byte(123) B). Byte b = new Byte("123");
C). Byte b = new Byte() ; b = 123 D). Byte b = new Byte((int)123.4)
2、為AB類的一個無形式參數無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調用它,該方法頭的形式為 ( A )
A) static void method( ) B) public void method( )
C) final void method( ) D) abstract void method( )
4、如果一個程序段中有多個catch,則程序會按如下哪種情況執行? ( C )
A) 找到合適的例外類型後繼續執行後面的catch
B) 找到每個符合條件的catch都執行一次
C) 找到合適的例外類型後就不再執行後面的catch
D) 對每個catch都執行一次
5、在java程序中,下列關於線程的說法錯誤的是: ( B )
A) run方法是運行線程的主體
B) 多個進程運行時執行順序是按順序執行的
C) 如果線程死亡,它便不能運行
D) 在java中,高優先順序的可運行線程會搶占低優先順序線程
6、在Java語言中,那一個是最基本的元素?( C )
A、方法 B、包 C、對象 D、介面
7、如果有2個類A和B,A類基於 B類,則下列描述中正確的一個是( B )。
A、這2個類都是子類或者超類 B、A是B超類的子類
C、B是A超類的子類 D、這2個類都是對方的子類
8、使用如下哪個保留字可以使只有在定義該類的包中的其他類才能訪問該類?( C )
A、abstract B、private C、protected D、不使用保留字
9、編譯一個定義了3個類和10個辦法的Java源文件後,會產生多少個字元碼文件,擴展名是什麼?( D )
A、13個位元組碼文件,擴展名是.class B、1個位元組碼文件,擴展名是.class
C、3個位元組碼文件,擴展名是.java D、3個位元組碼文件,擴展名是.class
10、下列屬於Java語言的特點的一項是( B )。
A、運算符重載 B、類間多重繼承 C、指針操作 D、垃圾回收
13、下列關於Java程序結構的描述中,不正確的一項是( C )。
A、一個Java源文件中可以包括一個package語句
B、一個Java源文件中可以包括多個類定義,但是只能有一個public類
C、一個Java源文件中可以有多個public類
D、源文件名與程序類名必須一致
14、下列說法正確的一項是( C )。
A、java.1ang.Integer是介面 B、java.1ang.Runnable是類
C、Doulble對象在iava.1ang包中 D、Double對象在java.1ang.Object包中
15、下列關於類、包和源文件的描述中,不正確的一項是( D )。
A、一個包可以包含多個類 B、一個源文件中,可能有一個公共類
C、屬於同一個包的類在默認情況下可以相互訪問 D、系統不會為源文件創建默認的
16、關於JDBC訪問資料庫的說法錯誤的是: ( D )
A) 建立資料庫連接時,必須載入驅動程序,可採用Class.forName()實現
B) 用於建立與某個數據源的連接可採用DriverManager類的getConnection方法
C) 建立資料庫連接時,必須要進行異常處理
D) JDBC中查詢語句的執行方法必須採用Statement類實現
❻ java有關方法頭的問題
public公共的 static靜態的 void無返回類型
D不正確,方法名前面有void(無返回)或者其他類型的返回值,
❼ 關於JAVA中 set方法總是出錯 請高人幫忙指點一下 哪裡錯了 (本過程只是輸入生成一個數組 找不到錯誤呀)
不是 set 方法的問題的 了 , 是你
ready[i].setPid(input.nextInt());
從數組里 拿到的 對象 是null 的 了 ready【i】 =new process() ; 創建 出來 呀
process 類 里 給 個 無參數的 構造函數
好像 你 從控制台 獲得 輸入參數 寫的 也有問題 的了 ,網上 好好查下噻 !!!!
ready[i]=new process();
String sc=input.next().trim();
ready[i].setPid(Integer.parseInt(sc));
ready[i].setPri(Integer.parseInt(sc));
ready[i].setPtm(Integer.parseInt(sc));
這樣 子 去搞 噻
❽ java中 調用native方法,生成頭文件時,為什麼不正確
displayHellowWorld應該是一個抽象方法,因為你沒有方法體,並且你沒有把它聲明是抽象方法,此為錯誤一。。
類是一個非抽象類,但是你裡面卻有一個抽象方法,此為錯誤二,所以編譯不通過。。
❾ 常見JAVA運行時異常有哪些
1、五種常見的異常:ClassCastException(類轉換異常)、IndexOutOfBoundsException(數組越界異常)、NullPointerException(空指針異常)、ArrayStoreException(數據存儲異常,操作數組時類型不一致)、BufferOverflowException(還有IO操作的,緩沖溢出異常)。
2、java運行時異常是可能在java虛擬機正常工作時拋出的異常。java提供了兩種異常機制。一種是運行時異常(RuntimeExepction),一種是檢查式異常(checked execption)。
檢查式異常:我們經常遇到的IO異常及sql異常就屬於檢查式異常。對於這種異常,java編譯器要求我們必須對出現的這些異常進行catch 所以 面對這種異常不管我們是否願意,只能自己去寫一堆catch來捕捉這些異常。
運行時異常:我們可以不處理。當出現這樣的異常時,總是由虛擬機接管。比如:我們從來沒有人去處理過NullPointerException異常,它就是運行時異常,並且這種異常還是最常見的異常之一。
(9)JAVA下列方法頭哪裡有錯誤擴展閱讀:
Java特點
Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。Java還剔除了C++的操作符過載和多繼承特徵,並且不使用主文件,免去了預處理程序。
因為Java沒有結構,數組和串都是對象,所以不需要指針。Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。
參考資料:網路-Java
❿ java中常見的幾種異常
1. java.lang.nullpointerexception
這個異常大家肯定都經常遇到,異常的解釋是"程序遇上了空指針",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針,很多情況下是一些剛開始學習編程的朋友常犯的錯誤,即把數組的初始化和數組元素的初始化混淆起來了。數組的初始化是對數組分配需要的空間,而初始化後的數組,其中的元素並沒有實例化,依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)
2. java.lang.classnotfoundexception
這個異常是很多原本在jb等開發環境中開發的程序員,把jb下的程序包放在wtk下編譯經常出現的問題,異常的解釋是"指定的類不存在",這里主要考慮一下類的名稱和路徑是否正確即可,如果是在jb下做的程序包,一般都是默認加上package的,所以轉到wtk下後要注意把package的路徑加上。
3. java.lang.arithmeticexception
這個異常的解釋是"數學運算異常",比如程序中出現了除以零這樣的運算就會出這樣的異常,對這種異常,大家就要好好檢查一下自己程序中涉及到數學運算的地方,公式是不是有不妥了。
4. java.lang.
這個異常相信很多朋友也經常遇到過,異常的解釋是"數組下標越界",現在程序中大多都有對數組的操作,因此在調用數組的時候一定要認真檢查,看自己調用的下標是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了,還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候,最好先查看一下數組的length,以免出現這個異常。
5. java.lang.illegalargumentexception
這個異常的解釋是"方法的參數錯誤",很多j2me的類庫中的方法在一些情況下都會引發這樣的錯誤,比如音量調節方法中的音量參數如果寫成負數就會出現這個異常,再比如g.setcolor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。
6. java.lang.illegalaccessexception
這個異常的解釋是"沒有訪問許可權",當應用程序要調用一個類,但當前的方法即沒有對該類的訪問許可權便會出現這個異常。對程序中用了package的情況下要注意這個異常。
其他還有很多異常,我就不一一列舉了,我要說明的是,一個合格的程序員,需要對程序中常見的問題有相當的了解和相應的解決辦法,否則僅僅停留在寫程序而不會改程序的話,會極大影響到自己的開發的。關於異常的全部說明,在api里都可以查閱。
算術異常類:ArithmeticExecption
空指針異常類:NullPointerException
類型強制轉換異常:ClassCastException
數組負下標異常:NegativeArrayException
數組下標越界異常:
違背安全原則異常:SecturityException
文件已結束異常:EOFException
文件未找到異常:FileNotFoundException
字元串轉換為數字異常:NumberFormatException
操作資料庫異常:SQLException
輸入輸出異常:IOException
方法未找到異常:NoSuchMethodException
java.lang.AbstractMethodError
抽象方法錯誤。當應用試圖調用抽象方法時拋出。
java.lang.AssertionError
斷言錯。用來指示一個斷言失敗的情況。
java.lang.ClassCircularityError
類循環依賴錯誤。在初始化一個類時,若檢測到類之間循環依賴則拋出該異常。
java.lang.ClassFormatError
類格式錯誤。當Java虛擬機試圖從一個文件中讀取Java類,而檢測到該文件的內容不符合類的有效格式時拋出。
java.lang.Error
錯誤。是所有錯誤的基類,用於標識嚴重的程序運行問題。這些問題通常描述一些不應被應用程序捕獲的反常情況。
java.lang.ExceptionInInitializerError
初始化程序錯誤。當執行一個類的靜態初始化程序的過程中,發生了異常時拋出。靜態初始化程序是指直接包含於類中的static語句段。
java.lang.IllegalAccessError
違法訪問錯誤。當一個應用試圖訪問、修改某個類的域(Field)或者調用其方法,但是又違反域或方法的可見性聲明,則拋出該異常。
java.lang.IncompatibleClassChangeError
不兼容的類變化錯誤。當正在執行的方法所依賴的類定義發生了不兼容的改變時,拋出該異常。一般在修改了應用中的某些類的聲明定義而沒有對整個應用重新編譯而直接運行的情況下,容易引發該錯誤。
java.lang.InstantiationError
實例化錯誤。當一個應用試圖通過Java的new操作符構造一個抽象類或者介面時拋出該異常.
java.lang.InternalError
內部錯誤。用於指示Java虛擬機發生了內部錯誤。
java.lang.LinkageError
鏈接錯誤。該錯誤及其所有子類指示某個類依賴於另外一些類,在該類編譯之後,被依賴的類改變了其類定義而沒有重新編譯所有的類,進而引發錯誤的情況。
java.lang.NoClassDefFoundError
未找到類定義錯誤。當Java虛擬機或者類裝載器試圖實例化某個類,而找不到該類的定義時拋出該錯誤。
java.lang.NoSuchFieldError
域不存在錯誤。當應用試圖訪問或者修改某類的某個域,而該類的定義中沒有該域的定義時拋出該錯誤。
java.lang.NoSuchMethodError
方法不存在錯誤。當應用試圖調用某類的某個方法,而該類的定義中沒有該方法的定義時拋出該錯誤。
java.lang.OutOfMemoryError
內存不足錯誤。當可用內存不足以讓Java虛擬機分配給一個對象時拋出該錯誤。
java.lang.StackOverflowError
堆棧溢出錯誤。當一個應用遞歸調用的層次太深而導致堆棧溢出時拋出該錯誤。
java.lang.ThreadDeath
線程結束。當調用Thread類的stop方法時拋出該錯誤,用於指示線程結束。
java.lang.UnknownError
未知錯誤。用於指示Java虛擬機發生了未知嚴重錯誤的情況。
java.lang.UnsatisfiedLinkError
未滿足的鏈接錯誤。當Java虛擬機未找到某個類的聲明為native方法的本機語言定義時拋出。
java.lang.UnsupportedClassVersionError
不支持的類版本錯誤。當Java虛擬機試圖從讀取某個類文件,但是發現該文件的主、次版本號不被當前Java虛擬機支持的時候,拋出該錯誤。
java.lang.VerifyError
驗證錯誤。當驗證器檢測到某個類文件中存在內部不兼容或者安全問題時拋出該錯誤。
java.lang.VirtualMachineError
虛擬機錯誤。用於指示虛擬機被破壞或者繼續執行操作所需的資源不足的情況。
java.lang.ArithmeticException
算術條件異常。譬如:整數除零等。
java.lang.
數組索引越界異常。當對數組的索引值為負數或大於等於數組大小時拋出。
java.lang.ArrayStoreException
數組存儲異常。當向數組中存放非數組聲明類型對象時拋出。
java.lang.ClassCastException
類造型異常。假設有類A和B(A不是B的父類或子類),O是A的實例,那麼當強制將O構造為類B的實例時拋出該異常。該異常經常被稱為強制類型轉換異常。
java.lang.ClassNotFoundException
找不到類異常。當應用試圖根據字元串形式的類名構造類,而在遍歷CLASSPAH之後找不到對應名稱的class文件時,拋出該異常。
java.lang.CloneNotSupportedException
不支持克隆異常。當沒有實現Cloneable介面或者不支持克隆方法時,調用其clone()方法則拋出該異常。
java.lang.
枚舉常量不存在異常。當應用試圖通過名稱和枚舉類型訪問一個枚舉對象,但該枚舉對象並不包含常量時,拋出該異常。
java.lang.Exception
根異常。用以描述應用程序希望捕獲的情況。
java.lang.IllegalAccessException
違法的訪問異常。當應用試圖通過反射方式創建某個類的實例、訪問該類屬性、調用該類方法,而當時又無法訪問類的、屬性的、方法的或構造方法的定義時拋出該異常。
java.lang.IllegalMonitorStateException
違法的監控狀態異常。當某個線程試圖等待一個自己並不擁有的對象(O)的監控器或者通知其他線程等待該對象(O)的監控器時,拋出該異常。
java.lang.IllegalStateException
違法的狀態異常。當在Java環境和應用尚未處於某個方法的合法調用狀態,而調用了該方法時,拋出該異常。
java.lang.IllegalThreadStateException
違法的線程狀態異常。當縣城尚未處於某個方法的合法調用狀態,而調用了該方法時,拋出異常。
java.lang.IndexOutOfBoundsException
索引越界異常。當訪問某個序列的索引值小於0或大於等於序列大小時,拋出該異常。
java.lang.InstantiationException
實例化異常。當試圖通過newInstance()方法創建某個類的實例,而該類是一個抽象類或介面時,拋出該異常。
java.lang.InterruptedException
被中止異常。當某個線程處於長時間的等待、休眠或其他暫停狀態,而此時其他的線程通過Thread的interrupt方法終止該線程時拋出該異常。
java.lang.NegativeArraySizeException
數組大小為負值異常。當使用負數大小值創建數組時拋出該異常。
java.lang.NoSuchFieldException
屬性不存在異常。當訪問某個類的不存在的屬性時拋出該異常。
java.lang.NoSuchMethodException
方法不存在異常。當訪問某個類的不存在的方法時拋出該異常。
java.lang.NullPointerException
空指針異常。當應用試圖在要求使用對象的地方使用了null時,拋出該異常。譬如:調用null對象的實例方法、訪問null對象的屬性、計算null對象的長度、使用throw語句拋出null等等。
java.lang.NumberFormatException
數字格式異常。當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常。
java.lang.RuntimeException
運行時異常。是所有Java虛擬機正常操作期間可以被拋出的異常的父類。
java.lang.SecurityException
安全異常。由安全管理器拋出,用於指示違反安全情況的異常。
java.lang.
字元串索引越界異常。當使用索引值訪問某個字元串中的字元,而該索引值小於0或大於等於序列大小時,拋出該異常。
java.lang.TypeNotPresentException
類型不存在異常。當應用試圖