<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            java語言

            Java由基礎到高級面試題經典問答

            時間:2025-06-01 05:22:04 java語言 我要投稿
            • 相關推薦

            Java由基礎到高級面試題經典問答

              你所知道的集合類都有哪些?下面就由小編為大家介紹一下Java由基礎到高級面試題經典問答的文章,歡迎閱讀。

            Java由基礎到高級面試題經典問答

              Java由基礎到高級面試題經典問答篇1

              1、String 和StringBuffer的區別

              String:

              (1)String 類代表字符串。Java程序中的所有字符串字面值都作為此類的實例實現。

              (2)String的長度是不可變的

              StringBuffer:

              (1)線程安全的可變字符序列。一個類似于 String 的字符串緩沖區,但不能修改。

              (2)StringBuffer的長度是可變的。如果你對字符串中的內容經常進行操作,特別是內容要修改時,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法

              2、啟動一個線程是用run()還是start()? .

              start():

              線程已經被啟動,正在等待被分配給CPU時間片,也就是說此時線程正在就緒隊列中排隊等候得到CPU資源。

              run():

              線程獲得CPU資源正在執行任務,此時除非此線程自動放棄CPU資源或者有優先級更高的'線程進入,線程將一直運行到結束。

              3、final, finally的區別。

              final:

              (1)final關鍵字可用于修飾類、變量和方法,用于表示它所修飾的類、變量和方法不可改變。

              變量: final修飾變量時,表示該變量一旦獲得了初始值之后就不可被改變,final既可修飾成員變量(包括類變量和實例變量),也可以修飾局部變量、形參。

              方法:final修飾的方法不可被重寫,如果出于某些原因,不希望子類重寫父類的某個方法,則可以使用final修飾該方法。

              類:final修飾的類不可有子類。

              finally:

              (1)finally關鍵字用于異常處理機制中往往跟在try-catch語句塊之后,finally語句所包含的代碼在任何情況下都會被執行 會被執行,且在try-catch語句塊中只能有一個finally語句塊。

              Java由基礎到高級面試題經典問答篇2

              1、List 和 Map 區別?

              列表(List):

              (1)List列表區分元素的順序,即List列表能夠精確的控制每個元素插入的位置,用戶能夠使用索引來訪問List中的元素。

              (2)List允許包含重復元素。

              映射(Map):

              (1)保存的是“鍵-值”對信息,即Map中存儲的每個元素都包括起標識作用的“鍵”和該元素的“值”兩部分,查找數據時需要提供相應的“鍵”,才能查找到該“鍵”所映射的“值”。

              (2)Map集合中不能包含重復的“鍵”,并且每個“鍵”最多只能映射一個值。

              2、JDBC中的PreparedStatement相比Statement的好處

              PreperedStatement是Statement的子類,相對于Statement對象而言:

              (1) PreperedStatement可以避免SQL注入的問題。

              (2)Statement會使數據庫頻繁編譯SQL,可能造成數據庫緩沖區溢出。

              (3)PreparedStatement 可對SQL進行預編譯,對相同的插入操作可進行批量添加從而提高數據庫的.執行效率。并且PreperedStatement對于sql中的參數,允許使用占位符的形式進行替換,簡化sql語句的編寫。

              3、你所知道的集合類都有哪些?主要方法?

              線性表型的集合:List——ArrayList、LinkedList、Vector、Stack

              不允許有重復元素的Set集合:Set——HashSet

              “鍵-值”對型的集合:Map——HashMap、HashTable

              主要方法:

              ArrayList:

              add(int index, E element)、add(E e)、remove(int index)

              remove(Object o)、get(int index)、size()、indexOf(Object obj)

              subList(int fromIndex, int toIndex)、clear()

              LinkedList:

              push(E e)、pop()、pollLast()、pollFirst()、peek()、

              get(int index)、getFirst()、getLast()、addFirst(E e)

              addLast(E e)、add(E e)、remove()、remove(int index)

              remove(Object o)

              Vector:

              firstElement()、elements()、contains(Object o)、

              add(int index, E element) 、clear()

              Stack:

              構造方法:

              Stack st=new Stack(); Stack st = new Stack();

              其他方法:

              peek() 、pop() 、push(E item) 、empty()、search(Object o)

              HashSet:

              構造方法

              HashSet()

              HashSet( c)

              其他方法

              contains(Object o) 、isEmpty()、iterator()、remove(Object o)

              size()

              HashMap:

              entrySet() 、get(Object key)、isEmpty()、keySet()、

              put(K key, V value)

              Java由基礎到高級面試題經典問答篇3

              1、abstract class和interface有什么區別?

              設計目的不同:

              接口體現的是一種規范,類似于整個系統的“總綱”,它制定了系統各模塊應該遵循的'標準 。

              抽象類作為多個子類的共同父類,體現的是模板式設計。抽象類可以被當成系統實現過程中的中間產品,這個中間產品已經實現了部分功能,但這個產品還不能當成最終產品,必須交由其子類作更進一步的完善,這種完善可能有幾種不同方式。

              用法不同:

              在接口里:

              (1)接口里只能包含不帶方法體的非靜態的抽象方法。

              (2)接口里只能定義靜態常量屬性

              (3)接口里不能包含初始化塊和構造方法

              (4)一個類可以實現多個接口,并且必須實現接口中所有的抽象方法。

              在抽象類里:

              (1)抽象類中既可以包含普通方法也可以定義靜態方法 。

              (2)抽象類既可以包含普通屬性,也可以包含靜態常量屬性

              (3)抽象類中以包含初始化塊并且也可以有構造方法,但是不用于創建對象,而是讓子類調用

              (4)一個只能繼承一個父類當一個抽象類被子類繼承時子類要么重寫父類的抽象方法要么將子類定義為抽象類。

              2、java中有幾種方法可以實現一個線程?用什么關鍵字修飾同步方法?

              Java中有兩種實現方法,分別是繼承Thread類與實現Runnable接口;synchronized

              3、面向對象的特征有哪些方面

              封裝,繼承,多態三方面。

              4、當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

              可以。

              /*不可以,當某個對象用synchronized修飾時,表明該對象已啟動“互斥鎖”機制,在任一時刻只能由一個線程訪問,即使該線程出現堵塞,該對象的被鎖定狀態也不會解除,其他線程任不能訪問該對象。*/

              5、事務的特性有哪些?

              事務應該具有4個屬性:原子性、一致性、隔離性、持續性。這四個屬性通常稱為ACID特性。

              6、得到Class的三個方法是什么?

              (1)類對象.getClass()

              (2)類名.class

              (3)Class.forName(“類名”);

              7、數組有沒有length()這個方法? String有沒有length()這個方法

              數組沒有length()這個方法,只有length的屬性。String有有length()這個方法。

            【Java由基礎到高級面試題經典問答】相關文章:

            Java 問答面試題09-03

            Java基礎知識問答08-20

            高級Java面試題精選11-02

            經典Java基礎面試題08-13

            高級Java面試題匯總11-03

            Java基礎語法面試題10-28

            Java基礎面試題集錦09-02

            Java基礎從代碼到運行06-17

            20個高級Java面試題及答案10-29

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看