JAVA期末简答题参考
:介于作者能力有限,難免不出現錯誤
發現錯誤,或者有更好的解答方法,請留言
JAVA基本語法
1.基本數據類型與字節數組、字符數組的互相轉換方式?試舉例說明。
答:
2.字符串類型如何與字節數組、字符數組的互相轉換?
答:
使用字符串類型的getBytes()方法可到的字節數組、用toCharry()方法可得到字符數組。
使用字符串類型的構造方法即可將字節數組、字符數組轉換成字符串類型。
3.字符串類型如何與基本數據類型互相轉換?
答:
字符串類型轉換為基本數據類型:調用基本數據類型對應的封裝類的parseXxx()方法
基本數據類型轉化為字符串類型:調用String類的valueOf()方法
4.什么是基本數據類型的封裝類?自動裝箱、自動坼箱的概念及舉例說明。
答:就是按照面向對象的做法,將基本數據類型封裝成對象。
如int的封裝類是Integer
自動裝箱:將基本數據類型的變量賦給對應的包裝類變量
自動拆箱:將包裝類對象類型直接賦給一個對應的基本數據類型變量
如 Integer num = 12;
int count = num + 1; 這里的count=13
類
1.什么是抽象類?什么是接口?試說明它們的區別和聯系,使用接口有什么好處?
答:
由abstract修飾的類叫做抽象類。
接口相當于抽象類,但實質上是類類型。
接口中定義的方法都是抽象方法,定義的屬性都是常量
在方法前默認加public abstract
在屬性前默認加public static final
好處:接口和類不同,不具有單繼承性,可以繼承多個接口
2.一個類允許實現多個接口嗎?允許繼承多個類嗎?
答:
允許實現多個接口,不允許繼承多個類
3.JAVA中定義類的時候,構造方法可以是私有的嗎(private修飾)?如果允許,如何構造該類的對象?可舉例說明。
答:
可以
class Person{
private Person(){
}
private static Person person = new Person();
public staitc Person getPerson(){
return person;
}
}
public class Test{
public static void main(String [] args){
Person p = Person.getPerson;
}
}
4.什么是方法的重載?什么是方法的重寫?可舉例說明。
答:
在一個程序中定義多個名稱相同,但參數的類型或個數不同的方法這就是方法的重載。
在繼承關系中,子類會自動繼承父類中公共的方法,但有時在子類中需要對繼承的方法進行一些修改,對父類的方法進行重寫,要求有相同的方法名、參數列表、返回值類型。
5.試說明“==”與equals(Object類)方法之間的關系? 子類重寫equals方法在編程中有何意義?可舉例說明。
答:
==比較的是地址
equals比較的是兩個對象的內容
重寫equals()是為了實現自己的區分邏輯。
例如:“abc”.equals(“abc”)返回true是我們要的結果,符合我們區分邏輯。而不是像Object的equals方法那樣“this == obj”引用相等才相同。所以String需要重寫Object的equals方法。
6.JAVA中對于字符串數據進行處理有哪些類?各有什么特點?它們有什么聯系?可舉例說明。
有三種類:
String、StirngBuffer、StringBuilder
String:String類的方法都是返回new String。即對String對象的任何改變都不影響到原對象,對字符串的修改操作都會生成新的對象。
StringBuffer:可變字符序列、線程安全
StringBuilder:可變字符序列、線程不安全
異常
1.什么是異常?JAVA中如何處理異常?
答:
異常是程序中出現的不正常情況,而不是JAVA虛擬機本身比較嚴重的錯誤
利用try-catch或try-catch-finally結構處理異常
2.JAVA中的異常可以分為運行時異常和受檢異常,它們的含義是什么?可舉例說明。
答:
運行時異常,指的是RuntimeException類以及它的子類
JAVA編譯器在編譯的時候不會提示和發現的異常,不強制要求程序進行處理
受檢異常:指的是除RuntimeException以外的異常,從語法上必須進行處理的異常需利用try-catch或try-catch-finally結構處理異常
或者利用throw或throws拋出異常
3.如何利用throw和throws拋出異常?
答:
throw必須寫在方法中,執行throw語句的地方就是一個異常拋出點
throws:寫在方法聲明中表明將要拋出何種異常,可以拋出多個異常
集合
如何理解JAVA中的集合框架?它包括哪些類型?各有什么特點?
答:
集合框架:為表示和操作集合而規定的一種統一標準體系結構。
集合可分為兩大類:單列集合Collection和雙列集合Map
Collection:有兩個重要的子接口List和Set。List元素有序允許重復
Set元素無序不允許重復
Map存儲具有鍵(Key)值(Value)映射關系的元素,Key是唯一的
輸入輸出
1.JAVA中,如何進行標準輸入和標準輸出?JAVA如何進行輸入輸出重定向?
答:
標準輸入:System.in
標準輸出:System.out、System.err
2.JAVA中的輸入輸出按傳輸的數據單元可以分為字節流和字符流,按傳輸的方向分為輸入流和輸出流。你所了解的輸入流和輸出流有哪些?各有什么特點?(可舉例說明)
多線程
1.什么是進程?什么是線程?進程與線程有什么關系?
答:
在一個操作系統中,每一個獨立執行的程序都可以成為一個進程
在一個進程中還可以有多個執行單元同時運行,來同時完成多個程序任務,這些執行單元被稱為線程。
2.JAVA中如何實現多線程編程?(利用Thread和Runnable舉例說明。 答:
1.Thread類實現多線程
(1)創建一個Thread線程類的子類,同時重寫Thread類的run()方法;
(2)創建該子類的實例對象,并通過start()方法啟動線程。
2.Runnable接口實現多線程
(1)創建一個Runnable接口的實現類,同時重寫接口中的run()方法
(2)創建Runnable接口的實現類對象
(3)使用Thread有參構造方法創建線程實例,并將Runnable接口的實現類的實例對象作為參數傳入
(4)調用線程實例的start()方法啟動線程
3.JAVA中多線程編程中,如何理解線程的生命周期及其狀態轉換?
答:Java官方API將線程的整個生命周期分成6個狀態,分別是新建狀態、可運行狀態、阻塞狀態、等待狀態、定時等待狀態、終止狀態。
轉化狀態p362
4什么是線程的同步?舉例說明如何實現線程同步?
答:
限制某個資源在同一時刻只能被一個線程訪問
實現線程同步的方法
(1)同步代碼塊
synchronized(lock){//操作共享資源代碼塊}
(2)同步方法
被synchronized修飾的方法在某一時刻只允許一個線程訪問。
網絡編程
1.關于JAVA的網絡編程,如何實現TCP協議通信?
2.關于JAVA的網絡編程,如何實現UDP協議通信?
總結
以上是生活随笔為你收集整理的JAVA期末简答题参考的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: K - 十日游戏
- 下一篇: 查找_排序_思维导图