一、 題目:? ?以下代碼輸出結(jié)果是什么
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:空間域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、盤錦網(wǎng)站維護(hù)、網(wǎng)站推廣。public class Test {
public int aMethod(){
static int i = 0;
i++;
return i;
}
public static void main(String args[]){
Test test = new Test();
test.aMethod();
int j = test.aMethod();
System.out.println(j);
}
}
A.0
B.1
C.2
D.編譯失敗
正確答案:? ? ?D
錯因:
雖然我也選了D,但并未想到其所屬類的性質(zhì),只沉浸在i的算法、方法的調(diào)用看有沒有錯,最終也未覺察出哪里有錯。
解析:
變量i用static修飾,即為靜態(tài)變量,屬于類變量;但同時又在方法aMethod()內(nèi)定義,即為局部變量;類變量與局部變量兩者的性質(zhì)是沖突的,因為類變量是隨著類的加載而創(chuàng)建,而局部變量是方法被調(diào)用才會被創(chuàng)建;Java中不定義存在局部的靜態(tài)變量。
考點(diǎn):? 變量的屬性與性質(zhì)
二、?題目:? ? ?編譯和運(yùn)行下列代碼,會有何結(jié)果
public class Pvf{
static boolean Paddy;
public static void main(String args[]){
System.out.println(Paddy);
}
}
A.編譯時錯誤
B.編譯通過并輸出結(jié)果false
C.編譯通過并輸出結(jié)果true
D.編譯通過并輸出結(jié)果null
答案:? B
錯因:
我選的:A,因為我認(rèn)為Paddy是靜態(tài)成員變量,是類的屬性,要訪問要通過類來訪問,無法直接訪問,應(yīng)該是?System.out.println(Pvf.Paddy);
解析:
成員變量未給初值即為默認(rèn)值,基本類型(int是0,boolean是false)是對應(yīng)的0值,引用類型(如String)是null
考點(diǎn):成員變量的默認(rèn)值、成員變量的使用。
三、題目:? ? ? 哪些在main函數(shù)中使用是正確的
public class Test{
private float f=1.0f;
int m=12;
static int n=1;
public static void main(String args[]){
Test t=new Test();
}
}
A.t.f = 3.0
B.this.n
C.Test.m
D.Test.n
答案:? D
錯因:
首先排除了B、C,在A、D之間猶豫看著都對,對基本數(shù)據(jù)類型模糊。
解析:
A選項f是float類型而3.0是double數(shù)據(jù)類型;B選項靜態(tài)方法中不能使用this,而且n是靜態(tài)的需要通過類名訪問不能通過this訪問,this代表當(dāng)前對象的引用但是靜態(tài)的成員變量不屬于this;C是m屬于非靜態(tài)成員變量,需要通過對象調(diào)用,不可以通過類名訪問;類成員變量和類成員方法是通過類名訪問所以D正確;
考點(diǎn):基本數(shù)據(jù)類型、this引用、成員變量。
四、 題目:? ? ?以下代碼說明正確的是
public class HasStatic {// 1
private static int x = 100;// 2
public static void main(String args[]) {// 3
HasStatic hsl = new HasStatic();// 4
hsl.x++;// 5
HasStatic hs2 = new HasStatic();// 6
hs2.x++;// 7
hsl = new HasStatic();// 8
hsl.x++;// 9
HasStatic.x--;// 10
System.out.println(" x=" + x);// 11
}
}
A.程序通過編譯,輸出結(jié)果為:x=102
B.程序通過編譯,輸出結(jié)果為:x=103
C.10行不能通過編譯.因為x星私有靜態(tài)變量
D.5行不能通過編譯.因為引用了私有靜態(tài)變量
正確答案:? ? A
錯因:
雖然選擇正確,但真實(shí)考點(diǎn)并沒有思考正確
解析:
x屬于靜態(tài)成員變量,屬于類變量,隨著類的加載而創(chuàng)建,只有一份,所有對靜態(tài)成員變量的操作針對的都是同一份;靜態(tài)成員變量的正確訪問方式是通過類名訪問,雖然通過對象也能訪問但并不推薦。
考點(diǎn):?靜態(tài)成員變量
五、題目:? ?cnt的值為:
public class Test{
static int cnt = 6;
static{
cnt += 9;
}
public static void main(String[] args){
System.out.println("cnt = " + cnt);
}
static{
cnt /=3;
};
}
A.cnt=5
B. cnt=2
C.cnt=3
D.cnt=6
正確答案:A
解析:
?1.成員變量? ?(若存在相同的多個,定義順序決定執(zhí)行順序)
?2.靜態(tài)代碼塊??(若存在相同的多個,定義順序決定執(zhí)行順序)
?3.實(shí)例化代碼塊
?4.對應(yīng)構(gòu)造方法
考點(diǎn):代碼塊兒的執(zhí)行順序。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧