中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java日常練習題之Panel和Applet 的默認布局管理器是什么

發布時間:2021-07-29 10:12:54 來源:億速云 閱讀:290 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關Java日常練習題之Panel和Applet 的默認布局管理器是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1、在異常處理中,若try中的代碼可能產生多種異常則可以對應多個catch語句,若catch中的參數類型有父類子類關系,此時應該將父類放在后面,子類放在前面。

正確答案: A

正確

錯誤

題解:
首先所有異常都是Exception的子類。
比如用Exception
因為所有異常都是Exception的子類,如果你把Exception放在前邊捕獲,后邊的catch將永遠不會執行

2、下面有關servlet中init,service,destroy方法描述錯誤的是?

正確答案: D

init()方法是servlet生命的起點。一旦加載了某個servlet,服務器將立即調用它的init()方法

service()方法處理客戶機發出的所有請求

destroy()方法標志servlet生命周期的結束

servlet在多線程下使用了同步機制,因此,在并發編程下servlet是線程安全的

題解:
servlet在多線程下其本身并不是線程安全的。
如果在類中定義成員變量,而在service中根據不同的線程對該成員變量進行更改,那么在并發的時候就會引起錯誤。最好是在方法中,定義局部變量,而不是類變量或者對象的成員變量。由于方法中的局部變量是在棧中,彼此各自都擁有獨立的運行空間而不會互相干擾,因此才做到線程安全。

3、以下描述錯誤的一項是( )?

正確答案: C

程序計數器是一個比較小的內存區域,用于指示當前線程所執行的字節碼執行 到了第幾行,是線程隔離的

原則上講,所有的對象都是在堆區上分配內存,是線程之間共享的

方法區用于存儲JVM加載的類信息、常量、靜態變量,即使編譯器編譯后的代碼等數據,是線程隔離的

Java方法執行內存模型,用于存儲局部變量,操作數棧,動態鏈接,方法出口等信息,是線程隔離的

題解:
方法區和堆內存是線程共享的。
程序計數器、虛擬機棧、本地方法棧是線程隔離的。
Java運行時內存
1.程序計數器,線程私有。可以看作是當前線程所執行的字節碼的行號指示器,字節碼解釋器工作時就是通過改變整個計數器的值來選取下一條需要執行的字節碼指令,分支、循環、跳轉、異常處理、線程恢復等功能。
由于JVM的多線程是通過線程輪流切換并分配處理器執行時間的方式來實現的,在任何一個確定的時刻,一個處理器(對于多核處理器來說是一個內核)都只會執行一條線程中的指令。因此為了線程切換后能恢復到正確的執行位置,每條線程都需要一個獨立的程序計數器,各條線程之間計數器互不影響,獨立存儲,所以線程私有。
程序計數器是唯一一個在Java虛擬機規范中沒有規定任何OOM的區域。
2.Java虛擬機棧,線程私有。生命周期和線程相同。虛擬機棧描述的是Java方法執行的內存模型,每個方法在執行的同時都會創建一個棧幀。每個方法從調用到執行完成的過程,就對應著一個棧幀在虛擬機中入棧到出棧的過程。
3.本地方法棧,線程私有。和虛擬機棧的區別就在于一個是為了執行Java方法服務,一個是為了虛擬機使用到的Native方法服務。
4.堆,線程共享。存放對象實例和數組。
5.方法區,線程共享。存放已經被JVM加載的類信息,常量,靜態變量,即時編譯器編譯后的代碼。

4、JSP 表達式的寫法:

正確答案: C

<% expression %>

<=% expression %>

<%= expression %>

<expression/>

題解:
(1)<%…%>:可以插入一些語句。
(2)<%! … %>:只能放置全局變量、全局常量、類、函數。
(3)<%= … %>:只能放置一個變量、常量。

5、Panel 和 Applet 的默認布局管理器是( )

正確答案: B

CardLayout

FlowLayout

BorderLayout

GridLayout

題解:
BorderLayout布局管理器,是Frame默認布局管理器,它是一個布置容器的邊框布局,它可以對容器 組件 進行安排,并調整其大小,使其符合下列五個區域:北、南、東、西、中。每個區域最多只能包含一個組件,并通過相應的常量進行標識:NORTH、SOUTH、EAST、WEST、CENTER。
FlowLayout流式布局管理器,是Panel和Applet默認布局管理器,它具有指定的對齊方式以及指定的水平和垂直間隙。
GridLayout布局管理器,GridLayout(int rows,int cols,int hgap,int vgap);建立一個表格的版面對象。rows代表有幾行,cols代表有幾列;hgap是組件之間的水平距離,vgap是組件之間的豎直距離。

6、What will be printed when you execute the following code?

class C {
    C() {
        System.out.print("C");
    }
}
class A {
    C c = new C();
    A() {
        this("A");
        System.out.print("A");
    }
    A(String s) {
        System.out.print(s);
    }
}
class Test extends A {
    Test() {
        super("B");
        System.out.print("B");
    }
    public static void main(String[] args) {
        new Test();
    }
}

正確答案: B

BB

CBB

BAB

None of the above

題解:
初始化過程是這樣的:
1.首先,初始化父類中的靜態成員變量和靜態代碼塊,按照在程序中出現的順序初始化;
2.然后,初始化子類中的靜態成員變量和靜態代碼塊,按照在程序中出現的順序初始化;
3.其次,初始化父類的普通成員變量和代碼塊,在執行父類的構造方法;
4.最后,初始化子類的普通成員變量和代碼塊,在執行子類的構造方法;
(1)初始化父類的普通成員變量和代碼塊,執行 C c = new C(); 輸出C
(2)super(“B”); 表示調用父類的構造方法,不調用父類的無參構造函數,輸出B
(3) System.out.print(“B”);
所以輸出CBB

7、下列選項中是正確的方法聲明的是?()

正確答案: A B C D

protected abstract void f1();

public final void f1() {}

static final void fq(){}

private void f1() {}

題解:
A:抽象方法只可以被public 和 protected修飾;
B:final可以修飾類、方法、變量,分別表示:該類不可繼承、該方法不能重寫、該變量是常量
C:static final 可以表達在一起來修飾方法,表示是該方法是靜態的不可重寫的方法
D:private 修飾方法(這太常見的)表示私有方法,本類可以訪問,外界不能訪問

8、Java是一門支持反射的語言,基于反射為Java提供了豐富的動態性支持,下面關于Java反射的描述,哪些是錯誤的:( )

正確答案: A D F

A:Java反射主要涉及的類如Class, Method, Filed,等,他們都在java.lang.reflet包下

B:通過反射可以動態的實現一個接口,形成一個新的類,并可以用這個類創建對象,調用對象方法

C:通過反射,可以突破Java語言提供的對象成員、類成員的保護機制,訪問一般方式不能訪問的成員

D:Java反射機制提供了字節碼修改的技術,可以動態的修剪一個類

E:Java的反射機制會給內存帶來額外的開銷。例如對永生堆的要求比不通過反射要求的更多

F:Java反射機制一般會帶來效率問題,效率問題主要發生在查找類的方法和字段對象,因此通過緩存需要反射類的字段和方法就能達到與之間調用類的方法和訪問類的字段一樣的效率

題解:
A Class類在java.lang包
B 動態代理技術可以動態創建一個代理對象,反射不行
C 反射訪問私有成員時,Field調用setAccessible可解除訪問符限制
D CGLIB實現了字節碼修改,反射不行
E 反射會動態創建額外的對象,比如每個成員方法只有一個Method對象作為root,他不胡直接暴露給用戶。調用時會返回一個Method的包裝類
F 反射帶來的效率問題主要是動態解析類,JVM沒法對反射代碼優化。

9、在Java中下面Class的聲明哪些是錯誤的?

正確答案: A B C

A:

public abstract final class Test {
	abstract void method();
}

B:

public abstract class Test {
	abstract final void method();
}

C:

public abstract class Test {
	abstract void method() {
}
}

D:

public class Test {
	final void method() {
}
}

題解:
A、final修飾的類為終態類,不能被繼承,而 抽象類是必須被繼承的才有其意義的,因此,final是不能用來修飾抽象類的。
B、 final修飾的方法為終態方法,不能被重寫。而繼承抽象類,必須重寫其方法。
C、抽象方法是僅聲明,并不做實現的方法。

10、以下哪些方法可以取到http請求中的cookie值()?

正確答案: B D

request.getAttribute

request.getHeader

request.getParameter

request.getCookies

題解:
下面的方法可用在 Servlet 程序中讀取 HTTP 頭。這些方法通過 HttpServletRequest 對象可用:
1)Cookie[] getCookies()
返回一個數組,包含客戶端發送該請求的所有的 Cookie 對象。
2)Object getAttribute(String name)
以對象形式返回已命名屬性的值,如果沒有給定名稱的屬性存在,則返回 null。
3)String getHeader(String name)
以字符串形式返回指定的請求頭的值。Cookie也是頭的一種;
4)String getParameter(String name)
以字符串形式返回請求參數的值,或者如果參數不存在則返回 null。

答案匯總:

1、正確答案: A

2、正確答案: D

3、正確答案: C

4、正確答案: C

5、正確答案: B

6、正確答案: B

7、正確答案: A B C D

8、正確答案: A D F

9、正確答案: A B C

10、正確答案: B D

關于“Java日常練習題之Panel和Applet 的默認布局管理器是什么”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

花垣县| 延寿县| 休宁县| 磴口县| 青冈县| 阿鲁科尔沁旗| 浙江省| 舞阳县| 灵寿县| 兴山县| 保德县| 江永县| 徐汇区| 玉山县| 尼勒克县| 广丰县| 许昌市| 灵武市| 偏关县| 漠河县| 常德市| 禹城市| 柘荣县| 禹州市| 新沂市| 张家川| 柘城县| 新昌县| 霍山县| 交口县| 潞西市| 宜昌市| 怀来县| 林周县| 锡林郭勒盟| 塘沽区| 平武县| 舒兰市| 河北省| 卢湾区| 来安县|