<kbd id="fugzo"></kbd>
<pre id="fugzo"></pre>
    1. <fieldset id="fugzo"><style id="fugzo"></style></fieldset>
      <center id="fugzo"></center>
    2. 哑剧盖章,电视剧折腰免费观看全集,亮剑3gp下载,秘密访客,泰剧为你着迷,古城童话,食物链无删减,大鱼海棠

      java校招面試編程題及答案

      時間:2024-09-03 01:27:23 面試筆試

      java校招面試編程題及答案

        在現實的學習、工作中,我們最熟悉的就是試題了,借助試題可以為主辦方提供考生某方面的知識或技能狀況的信息。還在為找參考試題而苦惱嗎?以下是小編收集整理的java校招面試編程題及答案,歡迎大家分享。

      java校招面試編程題及答案

        java校招面試編程題及答案1

        1.Java集合框架是什么?說出一些集合框架的優點?

        每種編程語言中都有集合,最初的Java版本包含幾種集合類:Vector、Stack、HashTable和Array。隨著集合的廣泛使用,Java1.2提出了囊括所有集合接口、實現和算法的集合框架。在保證線程安全的情況下使用泛型和并發集合類,Java已經經歷了很久。它還包括在Java并發包中,阻塞接口以及它們的實現。集合框架的部分優點如下:

        (1)使用核心集合類降低開發成本,而非實現我們自己的集合類。

        (2)隨著使用經過嚴格測試的集合框架類,代碼質量會得到提高。

        (3)通過使用JDK附帶的集合類,可以降低代碼維護成本。

        (4)復用性和可操作性。

        2.集合框架中的泛型有什么優點?

        Java1.5引入了泛型,所有的集合接口和實現都大量地使用它。泛型允許我們為集合提供一個可以容納的對象類型,因此,如果你添加其它類型的任何元素,它會在編譯時報錯。這避免了在運行時出現ClassCastException,因為你將會在編譯時得到報錯信息。泛型也使得代碼整潔,我們不需要使用顯式轉換和instanceOf操作符。它也給運行時帶來好處,因為不會產生類型檢查的字節碼指令。

        3.Java集合框架的基礎接口有哪些?

        Collection為集合層級的根接口。一個集合代表一組對象,這些對象即為它的元素。Java平臺不提供這個接口任何直接的實現。

        Set是一個不能包含重復元素的集合。這個接口對數學集合抽象進行建模,被用來代表集合,就如一副牌。

        List是一個有序集合,可以包含重復元素。你可以通過它的索引來訪問任何元素。List更像長度動態變換的數組。

        Map是一個將key映射到value的對象.一個Map不能包含重復的key:每個key最多只能映射一個value。

        一些其它的接口有Queue、Dequeue、SortedSet、SortedMap和ListIterator。

        4.為何Collection不從Cloneable和Serializable接口繼承?

        Collection接口指定一組對象,對象即為它的元素。如何維護這些元素由Collection的具體實現決定。例如,一些如List的Collection實現允許重復的元素,而其它的如Set就不允許。很多Collection實現有一個公有的clone方法。然而,把它放到集合的所有實現中也是沒有意義的。這是因為Collection是一個抽象表現。重要的是實現。

        當與具體實現打交道的時候,克隆或序列化的語義和含義才發揮作用。所以,具體實現應該決定如何對它進行克隆或序列化,或它是否可以被克隆或序列化。

        在所有的實現中授權克隆和序列化,最終導致更少的靈活性和更多的限制。特定的實現應該決定它是否可以被克隆和序列化。

        5.為何Map接口不繼承Collection接口?

        盡管Map接口和它的實現也是集合框架的一部分,但Map不是集合,集合也不是Map。因此,Map繼承Collection毫無意義,反之亦然。

        如果Map繼承Collection接口,那么元素去哪兒?Map包含key-value對,它提供抽取key或value列表集合的方法,但是它不適合“一組對象”規范。

        6.Iterator是什么?

        Iterator接口提供遍歷任何Collection的接口。我們可以從一個Collection中使用迭代器方法來獲取迭代器實例。迭代器取代了Java集合框架中的Enumeration。迭代器允許調用者在迭代過程中移除元素。

        7.Enumeration和Iterator接口的區別?

        Enumeration的速度是Iterator的兩倍,也使用更少的內存。Enumeration是非常基礎的,也滿足了基礎的需要。但是,與Enumeration相比,Iterator更加安全,因為當一個集合正在被遍歷的時候,它會阻止其它線程去修改集合。

        迭代器取代了Java集合框架中的Enumeration。迭代器允許調用者從集合中移除元素,而Enumeration不能做到。為了使它的功能更加清晰,迭代器方法名已經經過改善。

        8.為何沒有像Iterator.add()這樣的方法,向集合中添加元素?

        語義不明,已知的是,Iterator的協議不能確保迭代的次序。然而要注意,ListIterator沒有提供一個add操作,它要確保迭代的順序。

        9.為何迭代器沒有一個方法可以直接獲取下一個元素,而不需要移動游標?

        它可以在當前Iterator的頂層實現,但是它用得很少,如果將它加到接口中,每個繼承都要去實現它,這沒有意義。

        10.Iterater和ListIterator之間有什么區別?

        (1)我們可以使用Iterator來遍歷Set和List集合,而ListIterator只能遍歷List。

        (2)Iterator只可以向前遍歷,而LIstIterator可以雙向遍歷。

        (3)ListIterator從Iterator接口繼承,然后添加了一些額外的功能,比如添加一個元素、替換一個元素、獲取前面或后面元素的索引位置。

        11.遍歷一個List有哪些不同的方式?

        ListstrList=new ArrayList<>();

        //使用for-each循環

        for(String obj:strList){

        System.out.println(obj);

        }

        //using iterator

        Iteratorit=strList.iterator();

        while(it.hasNext()){

        String obj=it.next();

        System.out.println(obj);

        }

        使用迭代器更加線程安全,因為它可以確保,在當前遍歷的集合元素被更改的時候,它會拋出ConcurrentModificationException。

        12.通過迭代器fail-fast屬性,你明白了什么?

        每次我們嘗試獲取下一個元素的時候,Iterator fail-fast屬性檢查當前集合結構里的任何改動。如果發現任何改動,它拋出ConcurrentModificationException。Collection中所有Iterator的實現都是按fail-fast來設計的(ConcurrentHashMap和CopyOnWriteArrayList這類并發集合類除外)。

        13.fail-fast與fail-safe有什么區別?

        Iterator的fail-fast屬性與當前的集合共同起作用,因此它不會受到集合中任何改動的影響。Java.util包中的所有集合類都被設計為fail-fast的,而java.util.concurrent中的集合類都為fail-safe的。Fail-fast迭代器拋出ConcurrentModificationException,而fail-safe迭代器從不拋出ConcurrentModificationException。

        14.在迭代一個集合的時候,如何避免ConcurrentModificationException?

        在遍歷一個集合的時候,我們可以使用并發集合類來避免ConcurrentModificationException,比如使用CopyOnWriteArrayList,而不是ArrayList。

        15.為何Iterator接口沒有具體的實現?

        Iterator接口定義了遍歷集合的方法,但它的實現則是集合實現類的責任。每個能夠返回用于遍歷的Iterator的集合類都有它自己的Iterator實現內部類。

        這就允許集合類去選擇迭代器是fail-fast還是fail-safe的。比如,ArrayList迭代器是fail-fast的,而CopyOnWriteArrayList迭代器是fail-safe的。

        16.UnsupportedOperationException是什么?

        UnsupportedOperationException是用于表明操作不支持的異常。在JDK類中已被大量運用,在集合框架java.util.Collections.UnmodifiableCollection將會在所有add和remove操作中拋出這個異常。

        17.在Java中,HashMap是如何工作的?

        HashMap在Map.Entry靜態內部類實現中存儲key-value對。HashMap使用哈希算法,在put和get方法中,它使用hashCode()和equals()方法。當我們通過傳遞key-value對調用put方法的時候,HashMap使用Key hashCode()和哈希算法來找出存儲key-value對的索引。Entry存儲在LinkedList中,所以如果存在entry,它使用equals()方法來檢查傳遞的key是否已經存在,如果存在,它會覆蓋value,如果不存在,它會創建一個新的entry然后保存。當我們通過傳遞key調用get方法時,它再次使用hashCode()來找到數組中的索引,然后使用equals()方法找出正確的Entry,然后返回它的值。下面的圖片解釋了詳細內容。

        其它關于HashMap比較重要的問題是容量、負荷系數和閥值調整。HashMap默認的.初始容量是32,負荷系數是0.75。閥值是為負荷系數乘以容量,無論何時我們嘗試添加一個entry,如果map的大小比閥值大的時候,HashMap會對map的內容進行重新哈希,且使用更大的容量。容量總是2的冪,所以如果你知道你需要存儲大量的key-value對,比如緩存從數據庫里面拉取的數據,使用正確的容量和負荷系數對HashMap進行初始化是個不錯的做法。

        18.hashCode()和equals()方法有何重要性?

        HashMap使用Key對象的hashCode()和equals()方法去決定key-value對的索引。當我們試著從HashMap中獲取值的時候,這些方法也會被用到。如果這些方法沒有被正確地實現,在這種情況下,兩個不同Key也許會產生相同的hashCode()和equals()輸出,HashMap將會認為它們是相同的,然后覆蓋它們,而非把它們存儲到不同的地方。同樣的,所有不允許存儲重復數據的集合類都使用hashCode()和equals()去查找重復,所以正確實現它們非常重要。equals()和hashCode()的實現應該遵循以下規則:

        (1)如果o1.equals(o2),那么o1.hashCode()==o2.hashCode()總是為true的。

        (2)如果o1.hashCode()==o2.hashCode(),并不意味著o1.equals(o2)會為true。

        19.我們能否使用任何類作為Map的key?

        我們可以使用任何類作為Map的key,然而在使用它們之前,需要考慮以下幾點:

        (1)如果類重寫了equals()方法,它也應該重寫hashCode()方法。

        (2)類的所有實例需要遵循與equals()和hashCode()相關的規則。請參考之前提到的這些規則。

        (3)如果一個類沒有使用equals(),你不應該在hashCode()中使用它。

        (4)用戶自定義key類的最佳實踐是使之為不可變的,這樣,hashCode()值可以被緩存起來,擁有更好的性能。不可變的類也可以確保hashCode()和equals()在未來不會改變,這樣就會解決與可變相關的問題了。

        比如,我有一個類MyKey,在HashMap中使用它。

        //傳遞給MyKey的name參數被用于equals()和hashCode()中

        MyKey key=new MyKey('Pankaj');//assume hashCode=1234

        myHashMap.put(key,'Value');

        //以下的代碼會改變key的hashCode()和equals()值

        key.setName('Amit');//assume new hashCode=7890

        //下面會返回null,因為HashMap會嘗試查找存儲同樣索引的key,而key已被改變了,匹配失敗,返回null

        myHashMap.get(new MyKey('Pankaj'));

        那就是為何String和Integer被作為HashMap的key大量使用。

        20.Map接口提供了哪些不同的集合視圖?

        Map接口提供三個集合視圖:

        (1)Set keyset():返回map中包含的所有key的一個Set視圖。集合是受map支持的,map的變化會在集合中反映出來,反之亦然。當一個迭代器正在遍歷一個集合時,若map被修改了(除迭代器自身的移除操作以外),迭代器的結果會變為未定義。集合支持通過Iterator的Remove、Set.remove、removeAll、retainAll和clear操作進行元素移除,從map中移除對應的映射。它不支持add和addAll操作。

        (2)Collection values():返回一個map中包含的所有value的一個Collection視圖。這個collection受map支持的,map的變化會在collection中反映出來,反之亦然。當一個迭代器正在遍歷一個collection時,若map被修改了(除迭代器自身的移除操作以外),迭代器的結果會變為未定義。集合支持通過Iterator的Remove、Set.remove、removeAll、retainAll和clear操作進行元素移除,從map中移除對應的映射。它不支持add和addAll操作。

        (3)SetentrySet():返回一個map鐘包含的所有映射的一個集合視圖。這個集合受map支持的,map的變化會在collection中反映出來,反之亦然。當一個迭代器正在遍歷一個集合時,若map被修改了(除迭代器自身的移除操作,以及對迭代器返回的entry進行setValue外),迭代器的結果會變為未定義。集合支持通過Iterator的Remove、Set.remove、removeAll、retainAll和clear操作進行元素移除,從map中移除對應的映射。它不支持add和addAll操作。

        21.HashMap和HashTable有何不同?

        (1)HashMap允許key和value為null,而HashTable不允許。

        (2)HashTable是同步的,而HashMap不是。所以HashMap適合單線程環境,HashTable適合多線程環境。

        (3)在Java1.4中引入了LinkedHashMap,HashMap的一個子類,假如你想要遍歷順序,你很容易從HashMap轉向LinkedHashMap,但是HashTable不是這樣的,它的順序是不可預知的。

        (4)HashMap提供對key的Set進行遍歷,因此它是fail-fast的,但HashTable提供對key的Enumeration進行遍歷,它不支持fail-fast。

        (5)HashTable被認為是個遺留的類,如果你尋求在迭代的時候修改Map,你應該使用CocurrentHashMap。

        22.如何決定選用HashMap還是TreeMap?

        對于在Map中插入、刪除和定位元素這類操作,HashMap是最好的選擇。然而,假如你需要對一個有序的key集合進行遍歷,TreeMap是更好的選擇。基于你的collection的大小,也許向HashMap中添加元素會更快,將map換為TreeMap進行有序key的遍歷。

        23.ArrayList和Vector有何異同點?

        ArrayList和Vector在很多時候都很類似。

        (1)兩者都是基于索引的,內部由一個數組支持。

        (2)兩者維護插入的順序,我們可以根據插入順序來獲取元素。

        (3)ArrayList和Vector的迭代器實現都是fail-fast的。

        (4)ArrayList和Vector兩者允許null值,也可以使用索引值對元素進行隨機訪問。

        以下是ArrayList和Vector的不同點。

        (1)Vector是同步的,而ArrayList不是。然而,如果你尋求在迭代的時候對列表進行改變,你應該使用CopyOnWriteArrayList。

        (2)ArrayList比Vector快,它因為有同步,不會過載。

        (3)ArrayList更加通用,因為我們可以使用Collections工具類輕易地獲取同步列表和只讀列表。

        24.Array和ArrayList有何區別?什么時候更適合用Array?

        Array可以容納基本類型和對象,而ArrayList只能容納對象。

        Array是指定大小的,而ArrayList大小是固定的。

        Array沒有提供ArrayList那么多功能,比如addAll、removeAll和iterator等。盡管ArrayList明顯是更好的選擇,但也有些時候Array比較好用。

        (1)如果列表的大小已經指定,大部分情況下是存儲和遍歷它們。

        (2)對于遍歷基本數據類型,盡管Collections使用自動裝箱來減輕編碼任務,在指定大小的基本類型的列表上工作也會變得很慢。

        (3)如果你要使用多維數組,使用[][]比List<list<>>更容易。

        25.ArrayList和LinkedList有何區別?

        ArrayList和LinkedList兩者都實現了List接口,但是它們之間有些不同。

        (1)ArrayList是由Array所支持的基于一個索引的數據結構,所以它提供對元素的隨機訪問,復雜度為O(1),但LinkedList存儲一系列的節點數據,每個節點都與前一個和下一個節點相連接。所以,盡管有使用索引獲取元素的方法,內部實現是從起始點開始遍歷,遍歷到索引的節點然后返回元素,時間復雜度為O(n),比ArrayList要慢。

        (2)與ArrayList相比,在LinkedList中插入、添加和刪除一個元素會更快,因為在一個元素插入到中間的時候,不會涉及改變數組的大小,或更新索引。

        (3)LinkedList比ArrayList消耗更多的內存,因為LinkedList中的每個節點存儲了前后節點的引用。

        26.哪些集合類提供對元素的隨機訪問?

        ArrayList、HashMap、TreeMap和HashTable類提供對元素的隨機訪問。

        27.EnumSet是什么?

        java.util.EnumSet是使用枚舉類型的集合實現。當集合創建時,枚舉集合中的所有元素必須來自單個指定的枚舉類型,可以是顯示的或隱示的。EnumSet是不同步的,不允許值為null的元素。它也提供了一些有用的方法,比如copyOf(Collection c)、of(E first,E…rest)和complementOf(EnumSet s)。

        28.哪些集合類是線程安全的?

        Vector、HashTable、Properties和Stack是同步類,所以它們是線程安全的,可以在多線程環境下使用。Java1.5并發API包括一些集合類,允許迭代時修改,因為它們都工作在集合的克隆上,所以它們在多線程環境中是安全的。

        29.并發集合類是什么?

        Java1.5并發包(java.util.concurrent)包含線程安全集合類,允許在迭代時修改集合。迭代器被設計為fail-fast的,會拋出ConcurrentModificationException。一部分類為:CopyOnWriteArrayList、ConcurrentHashMap、CopyOnWriteArraySet。

        30.BlockingQueue是什么?

        Java.util.concurrent.BlockingQueue是一個隊列,在進行檢索或移除一個元素的時候,它會等待隊列變為非空;當在添加一個元素時,它會等待隊列中的可用空間。BlockingQueue接口是Java集合框架的一部分,主要用于實現生產者-消費者模式。我們不需要擔心等待生產者有可用的空間,或消費者有可用的對象,因為它都在BlockingQueue的實現類中被處理了。Java提供了集中BlockingQueue的實現,比如ArrayBlockingQueue、LinkedBlockingQueue、PriorityBlockingQueue,、SynchronousQueue等。

        31.隊列和棧是什么,列出它們的區別?

        棧和隊列兩者都被用來預存儲數據。java.util.Queue是一個接口,它的實現類在Java并發包中。隊列允許先進先出(FIFO)檢索元素,但并非總是這樣。Deque接口允許從兩端檢索元素。

        棧與隊列很相似,但它允許對元素進行后進先出(LIFO)進行檢索。

        Stack是一個擴展自Vector的類,而Queue是一個接口。

        32.Collections類是什么?

        Java.util.Collections是一個工具類僅包含靜態方法,它們操作或返回集合。它包含操作集合的多態算法,返回一個由指定集合支持的新集合和其它一些內容。這個類包含集合框架算法的方法,比如折半搜索、排序、混編和逆序等。

        33.Comparable和Comparator接口是什么?

        如果我們想使用Array或Collection的排序方法時,需要在自定義類里實現Java提供Comparable接口。Comparable接口有compareTo(T OBJ)方法,它被排序方法所使用。我們應該重寫這個方法,如果“this”對象比傳遞的對象參數更小、相等或更大時,它返回一個負整數、0或正整數。但是,在大多數實際情況下,我們想根據不同參數進行排序。比如,作為一個CEO,我想對雇員基于薪資進行排序,一個HR想基于年齡對他們進行排序。這就是我們需要使用Comparator接口的情景,因為Comparable.compareTo(Object o)方法實現只能基于一個字段進行排序,我們不能根據對象排序的需要選擇字段。Comparator接口的compare(Object o1,Object o2)方法的實現需要傳遞兩個對象參數,若第一個參數比第二個小,返回負整數;若第一個等于第二個,返回0;若第一個比第二個大,返回正整數。

        34.Comparable和Comparator接口有何區別?

        Comparable和Comparator接口被用來對對象集合或者數組進行排序。Comparable接口被用來提供對象的自然排序,我們可以使用它來提供基于單個邏輯的排序。

        Comparator接口被用來提供不同的排序算法,我們可以選擇需要使用的Comparator來對給定的對象集合進行排序。

        35.我們如何對一組對象進行排序?

        如果我們需要對一個對象數組進行排序,我們可以使用Arrays.sort()方法。如果我們需要排序一個對象列表,我們可以使用Collection.sort()方法。兩個類都有用于自然排序(使用Comparable)或基于標準的排序(使用Comparator)的重載方法sort()。Collections內部使用數組排序方法,所有它們兩者都有相同的性能,只是Collections需要花時間將列表轉換為數組。

        36.當一個集合被作為參數傳遞給一個函數時,如何才可以確保函數不能修改它?

        在作為參數傳遞之前,我們可以使用Collections.unmodifiableCollection(Collection c)方法創建一個只讀集合,這將確保改變集合的任何操作都會拋出UnsupportedOperationException。

        37.我們如何從給定集合那里創建一個synchronized的集合?

        我們可以使用Collections.synchronizedCollection(Collection c)根據指定集合來獲取一個synchronized(線程安全的)集合。

        38.集合框架里實現的通用算法有哪些?

        Java集合框架提供常用的算法實現,比如排序和搜索。Collections類包含這些方法實現。大部分算法是操作List的,但一部分對所有類型的集合都是可用的。部分算法有排序、搜索、混編、最大最小值。

        39.大寫的O是什么?舉幾個例子?

        大寫的O描述的是,就數據結構中的一系列元素而言,一個算法的性能。Collection類就是實際的數據結構,我們通常基于時間、內存和性能,使用大寫的O來選擇集合實現。比如:例子1:ArrayList的get(index i)是一個常量時間操作,它不依賴list中元素的數量。所以它的性能是O(1)。例子2:一個對于數組或列表的線性搜索的性能是O(n),因為我們需要遍歷所有的元素來查找需要的元素。

        java校招面試編程題及答案2

        1.什么是Java虛擬機?為什么Java被稱作是“平臺無關的編程語言”?

        Java虛擬機是一個可以執行Java字節碼的虛擬機進程。Java源文件被編譯成能被Java虛擬機執行的字節碼文件。

        Java被設計成允許應用程序可以運行在任意的平臺,而不需要程序員為每一個平臺單獨重寫或者是重新編譯。Java虛擬機讓這個變為可能,因為它知道底層硬件平臺的指令長度和其他特性。

        2.JDK和JRE的區別是什么?

        JRE: Java RuntimeEnvironment

        JDK:Java Development Kit

        JRE顧名思義是java運行時環境,包含了iava虛擬機,java基礎類庫。是使用iava語言編寫的程序運行所需要的軟件環境,是提供給想運行java程序的用戶使用的。

        JDK顧名思義是java開發工具包,是程序員使用iava語言編寫java程序所需的開發工具包,是提供給程序員使用的。JDK包含了JRE,同時還包含了編譯java源碼的編譯器javac,還包含了很多java程序調試和分析的工具:jconsole,jvisualvm等工具軟件,還包含了java程序編寫所需的文檔和demo例子程序。

        如果你需要運行iava程序,只需安裝JRE就可以了。如果你需要編寫iava程序,需要安裝JDK.

        JRE根據不同操作系統(如:windows,linux等)和不同JRE提供商(IBM,ORACLE等)有很多版本

        再說說java的跨平臺吧:

        java源程序先經過javac編譯器編譯成二進制的.class字節碼文件(iava的跨平臺指的就是.class字節碼文件的跨平臺,.class字節碼文件是與平臺無關的),.class文件再運行在jvm上,java解釋器(jvm的一部分)會將其解釋成對應平臺的機器碼執行,所以java所謂的跨平臺就是在不同平臺上安裝了不同的jvm,而在不同平臺上生成的.class文件都是一樣的,而.class文件再由對應平臺的jvm解釋成對應平臺的機器碼執行

        最后解釋下機器碼和字節碼的區別:

        一、機器碼,完全依附硬件而存在~并且不同硬件由于內嵌指令集不同,即使相同的01代碼

        意思也可能是不同的 ~ 換句話說,根本不存在跨平臺性 ~ 比如 ~ 不同型號的CPU,你給他個指令10001101,他們可能會解析為不同的結果~

        二、我們知道JAVA是跨平臺的,為什么呢?因為他有一個jvm,不論那種硬件,只要你裝有jvm,那么他就認識這個JAVA字節碼~ ~ ~ ~ 至于底層的機器碼,咱不用管,有jvm搞定,他會把字節碼再翻譯成所在機器認識的機器碼~ ~ ~

        3.”static”關鍵字是什么意思?Java中是否可以覆蓋(override)一個private或者是static的方法?

        "static”關鍵字表明一個成員變量或者是成員方法可以在沒有所屬的類的實例變量的情況下被訪問。

        Java中static方法不能被覆蓋,因為方法覆蓋是基于運行時動態綁定的,而static方法是編譯時靜態綁定的。static方法跟類的任何實例都不相關,所以概念上不適用。

        java中也不可以覆蓋private的方法,因為private修飾的變量和方法只能在當前類中使用,如果是其也的類繼承當前類是不能訪問到private變量或方法的,當然也不能覆蓋。

        4.是否可以在static環境中訪問非static變量?

        static變量在Java中是屬于類的,它在所有的實例中的值是一樣的。當類被Java虛擬機載入的時候會對static變量進行初始化。如果你的代碼嘗試不用實例來訪問非static的變量,編譯器會報錯,因為這些變量還沒有被創建出來,還沒有跟任何實例關聯上。

        5.Java支持的數據類型有哪些?什么是自動拆裝箱?

        Java語言支持的8種基本數據類型是:

        byte

        short

        int

        long

        float

        double

        boolean

        char

        自動裝箱是Java編譯器在基本數據類型和對應的對象包裝類型之間做的一個轉化。比如:把int轉化成Integer,double轉化成Double,等等。反之就是自動拆箱。

        Java支持的數據類型包括兩種:一種是基本數據類型,包含byte,charshort, boolean ,int,long floatdouble:另一種是引用類型:如String等,其實是對象的引用,JVM中虛擬棧中存的是對象的地址,創建的對象實質在堆中,通過地址來找到堆中的對象的過程,即為引用類型。自動裝箱就是 Java編譯器在基本數據類型和對應的對象包裝類型間的轉化,即int轉化為Integer,自動拆箱是 Integer調用其方法將其轉化為int的過程。

        6.Java中的方法覆蓋(Overriding)和方法重載(Overload)是什么意思?

        Java中的方法重載發生在同一個類里面兩個或者是多個方法的方法名相同但是參數不同的情況。與此相對,方法覆蓋是說子類重新定義了父類的方法。方法覆蓋必須有相同的方法名,參數列表和返回類型。覆蓋者可能不會限制它所覆蓋的方法的訪問。

        7.Java中,什么是構造方法?什么是構造方法重載?什么是復制構造方法?

        當新對象被創建的時候,構造方法會被調用。每一個類都有構造方法。在程序員沒有給類提供構造方法的情況下,Java編譯器會為這個類創建一個默認的構造方法。

        Java中構造方法重載和方法重載很相似。可以為一個類創建多個構造方法。每一個構造方法必須有它自己唯一的參數列表。

        Java不支持像C++中那樣的復制構造方法,這個不同點是因為如果你不自己寫構造方法的情況下 lava不會創建默認的復制構造方法。

        8.Java支持多繼承么?

        Java中類不支持多繼承,只支持單繼承(即一個類只有一個父類)。 但是java中的接口支持多繼承,,即一個子接口可以有多個父接口。(接口的作用是用來擴展對象的功能,一個子接口繼承多個父接口,說明子接口擴展了多個功能,當類實現接口時,類就擴展了相應的功能)。

        9.接口和抽象類的區別是什么?

        Java提供和支持創建抽象類和接口。它們的實現有共同點,不同點在于:

        接口中所有的方法隱含的都是抽象的。而抽象類則可以同時包含抽象和非抽象的方法。類可以實現很多個接口,但是只能繼承一個抽象類

        類可以不實現抽象類和接口聲明的所有方法,當然,在這種情況下,類也必須得聲明成是抽象的。

        抽象類可以在不提供接口方法實現的情況下實現接口。

        Java接口中聲明的變量默認都是final的。抽象類可以包含非final的.變量。

        Java接口中的成員函數默認是public的。抽象類的成員函數可以是private,protected或者是 public。

        接口是絕對抽象的,不可以被實例化,抽象類也不可以被實例化

        也可以參考JDK8中抽象類和接口的區別

        10.進程和線程的區別是什么?

        進程是執行著的應用程序,而線程是進程內部的一個執行序列。一個進程可以有多個線程。線程又叫做輕量級進程。

        線程與進程的區別歸納:

        a.地址空間和其它資源:進程間相互獨立,同一進程的各線程間共享,某進程內的線程在其它進程不可見。

        b.通信:進程間通信IPC,線程間可以直接讀寫進程數據段(如全局變量)來進行通信–需要進程同步和石斥手段的輔助,以保證數據的一致性。

        c.調度和切換:線程上下文切換比進程上下文切換要快得多。

        d.在多線程OS中,進程不是一個可執行的實體。

        11.創建線程有幾種不同的方式?你喜歡哪一種?為什么?

        有4種方式可以用來創建線程:

        繼承Thread類

        實現Runnable接口

        應用程序可以使用Executor框架來創建線程池

        實現Runnable接口這種方式更受歡迎,因為這不需要繼承Thread類。在應用設計中已經繼承了別的對象的情況下,這需要多繼承(而Java不支持多繼承),只能實現接口。同時,線程池也是非常高效的,很容易實現和使用。

        還有一種方式是實現Callable接口

        12.概括的解釋下線程的幾種可用狀態。

        1.新建(new):新創建了一個線程對象。

        2.可運行(runnable):線程對象創建后,其他線程(比如main線程)調用了該對象的start(方法。該狀態的線程位于可運行線程池中,等待被線程調度選中,獲取cpu的使用權。

        3.運行(running):可運行狀態(runnable)的線程獲得了cpu時間片(timeslice),執行程序代碼。

        4.阻塞(block):阻塞狀態是指線程因為某種原因放棄了cpu使用權,也即讓出了 cpu timeslice暫時停止運行。直到線程進入可運行(runnable)狀態,才有機會再次獲得cputimeslice 轉到運行(running)狀態。阻塞的情況分三種:

        (一).等待阻塞:運行(running)的線程執行o.wait(方法,JVM 會把該線程放入等待隊列( waitting queue)中。

        (二.同步阻塞:運行(running)的線程在獲取對象的同步鎖時,若該同步鎖 被別的線程占用,則 JVM 會把該線程放入鎖池( lock pool )中。

        (三).其他阻塞:運行(running)的線程執行Thread .sleep(long ms)或t.join()方法,或者發出了1/0請求時,JVM會把該線程置為阻塞狀態。當sleep(狀態超時、join()等待線程終止或者超時、或者1/0處理完畢時,線程重新轉入可運行(runnable)狀態。

        5.死亡(dead):線程run(、main)方法執行結束,或者因異常退出了run(方法,則該線程結束生命周期。死亡的線程不可再次復生。

        13.同步方法和同步代碼塊的區別是什么?

        區別:

        同步方法默認用this或者當前類class對象作為鎖:

        同步代碼塊可以選擇以什么來加鎖,比同步方法要更細顆粒度,我們可以選擇只同步會發生同步問題的部分代碼而不是整個方法:

        同步方法使用關鍵字synchronized修飾方法,而同步代碼塊主要是修飾需要進行同步的代碼。用synchronized(object)(代碼內容}進行修飾;

        14.在監視器(Monitor)內部,是如何做線程同步的?程序應該做哪種級別的同步?

        監視器和鎖在Java虛擬機中是一塊使用的。監視器監視一塊同步代碼塊,確保一次只有一個線程執行同步代碼塊。每一個監視器都和一個對象引用相關聯。線程在獲取鎖之前不允許執行同步代碼。

        15.什么是死鎖(deadlock)?

        所謂死鎖是指多個進程因競爭資源而造成的一種僵局(互相等待),若無外力作用,這些進程都將無法向前推進。死鎖產生的4個必要條件:

        互斥條件:進程要求對所分配的資源(如打印機)進行排他性控制,即在一段時間內某 資源僅為一個進程所占有。此時若有其他進程請求該資源,則請求進程只能等待。

        不剝奪條件:進程所獲得的資源在未使用完畢之前,不能被其他進程強行奪走,即只能 由獲得該資源的進程自己來釋放(只能是主動釋放)。

        請求和保持條件:進程已經保持了至少一個資源,但又提出了新的資源請求,而該資源 已被其他進程占有,此時請求進程被阻塞,但對自己已獲得的資源保持不放。

        循環等待條件:存在一種進程資源的循環等待鏈,鏈中每一個進程已獲得的資源同時被 鏈中下

        個進程所請求。

        16.如何確保N個線程可以訪問N個資源同時又不導致死鎖?

        使用多線程的時候,一種非常簡單的避免死鎖的方式就是:指定獲取鎖的順序,并強制線程按照指定的順序獲取鎖。因此,如果所有的線程都是以同樣的順序加鎖和釋放鎖,就不會出現死鎖了。

        17.Java集合類框架的基本接口有哪些?

        集合類接口指定了一組叫做元素的對象。集合類接口的每一種具體的實現類都可以選擇以它自己的方式對元素進行保存和排序。有的集合類允許重復的鍵,有些不允許。

        Java集合類提供了一套設計良好的支持對一組對象進行操作的接口和類。Java集合類里面最基本的接口有:

        Collection:代表一組對象,每一個對象都是它的子元素。

        Set:不包含重復元素的Collection.

        List:有順序的collection,并且可以包含重復元素。

        Map:可以把鍵(kev)映射到值(value)的對象,鍵不能重復。

        18.為什么集合類沒有實現Cloneable和Serializable接口?

        克隆(cloning)或者是序列化(serialization)的語義和含義是跟具體的實現相關的。因此,應該由集合類的具體實現來決定如何被克隆或者是序列化。

        19.什么是迭代器(lterator)?

        lterator接口提供了很多對集合元素進行選代的方法。每一個集合類都包含了可以返回選代器實例的

        迭代方法。迭代器可以在迭代的過程中刪除底層集合的元素,但是不可以直接調用集合的

        remove(Object Obj)刪除,可以通過迭代器的remove()方法刪除。

        20.lterator和Listlterator的區別是什么?

        下面列出了他們的區別:

        Iterator可用來遍歷Set和List集合,但是Listlterator只能用來遍歷List。

        Iterator對集合只能是前向遍歷,Listlterator既可以前向也可以后向。

        Listlterator實現了lterator接口,并包含其他的功能,比如:增加元素,替換元素,獲取前一個和后一個元素的索引,等等。

        21.快速失敗(fail-fast)和安全失敗(fail-safe)的區別是什么?

        一、快速失敗(fail-fast)

        在用選代器遍歷一個集合對象時,如果遍歷過程中對集合對象的結構進行了修改(增加、刪除)。則會拋出Concurrent Modification Exception。

        原理:選代器在遍歷時直接訪問集合中的內容,并且在遍歷過程中使用一個modCount變量。集合在被遍歷期間如果結構發生變化,就會改變modCount的值。每當迭代器使用hashNext(/next(遍歷下一個元素之前,都會檢測modCount變量是否為expectedmodCount值,是的話就返回遍歷;否則拋出異常,終止遍歷。

        注意:這里異常的拋出條件是檢測到 modCount!=expectedmodCount 這個條件。如果集合發生變化時修改modCount值剛好又設置為了expectedmodCount值,則異常不會拋出。因此,不能依賴于這個異常是否拋出而進行并發操作的編程,這個異常只建議用于檢測并發修改的bug。

        場景:java.util包下的集合類都是快速失敗的,不能在多線程下發生并發修改(迭代過程中被修改)。

        二、安全失敗(fail-safe)

        采用安全失敗機制的集合容器,在遍歷時不是直接在集合內容上訪問的,而是先復制原有集合內容,在拷貝的集合上進行遍歷。

        原理:由于迭代時是對原集合的拷貝進行遍歷,所以在遍歷過程中對原集合所作的修改并不能被選代器檢測到,所以不會觸發Concurrent Modification Exception。

        缺點:基于拷貝內容的優點是避免了Concurrent Modification Exception,但同樣地,選代器并不能訪問到修改后的內容,即:迭代器遍歷的是開始遍歷那一刻拿到的集合拷貝,在遍歷期間原集合發生的修改迭代器是不知道的。

        場景:java.util.concurrent包下的容器都是安全失敗,可以在多線程下并發使用,并發修改。

        22.Java中的HashMap的工作原理是什么?

        Java中的HashMap是以鍵值對(key-value)的形式存儲元素的。HashMap需要一個hash函數,它使用hashCode()和equals(方法來向集合/從集合添加和檢索元素。當調用put(方法的時候, HashMap會計算key的hash值,然后把鍵值對存儲在集合中合適的索引上。如果key已經存在了,value會被更新成新值。HashMap的一些重要的特性是它的容量(capacity),負載因子(load

        factor)和擴容極限(threshold resizing)。

        23.hashCode()和equals()方法的重要性體現在什么地方?

        Java中的HashMap使用hashCode()和equals()方法來確定鍵值對的索引,當根據鍵獲取值的時候也會用到這兩個方法。如果沒有正確的實現這兩個方法,兩個不同的鍵可能會有相同的hash值,因此,可能會被集合認為是相等的。而且,這兩個方法也用來發現重復元素。所以這兩個方法的實現對HashMap的精確性和正確性是至關重要的。

        24.HashMap和Hashtable有什么區別?

        HashMap和Hashtable都實現了Map接口,因此很多特性非常相似。但是,他們有以下不同點:

        HashMap允許鍵和值是null,而Hashtable不允許鍵或者值是null。

        Hashtable是同步的,而HashMap不是。因此,HashMap更適合于單線程環境,而Hashtable適合于多線程環境。

        HashMap提供了可供應用迭代的鍵的集合,因此,HashMap是快速失敗的。另一方面 Hashtable提供了對鍵的列舉(Enumeration)。

        一般認為Hashtable是一個遺留的類。

        25.數組(Array)和列表(ArrayList)有什么區別?什么時候應該使用Array而不是ArrayList?

        下面列出了Array和ArrayList的不同點:

        Array可以包含基本類型和對象類型,ArrayList只能包含對象類型。

        Array大小是固定的,ArrayList的大小是動態變化的。

        ArrayList提供了更多的方法和特性,比如:addAll0,removeAll0,iterator()等等。

        對于基本類型數據,集合使用自動裝箱來減少編碼工作量。但是,當外理固定大小的基本數據類型的時候,這種方式相對比較慢。

        26.ArrayList和LinkedList有什么區別?

        ArrayList和LinkedList都實現了List接口,他們有以下的不同點:

        ArrayList是基于索引的數據接口,它的底層是數組。它可以以0(1)時間復雜度。對元素進行隨機訪問。與此對應,LinkedList是以元素列表的形式存儲它的數據,每一個元素都和它的前一個和后一個元素鏈接在一起,在這種情況下,查找某個元素的時間復雜度是O(n)。

        相對于ArrayList,LinkedList的插入,添加,刪除操作速度更快,因為當元素被添加到集合任意位置的時候,不需要像數組那樣重新計算大小或者是更新索引。

        LinkedList比ArrayList更占內存,因為LinkedList為每一個節點存儲了兩個引用,一個指向前一個元素,一個指向下一個元素。

        也可以參考ArrayList vs. LinkedList。

        27.Comparable和Comparator接口是干什么的?列出它們的區別。

        Java提供了只包含一個compareTo(方法的Comparable接口。這個方法可以個給兩個對象排序。具體來說,它返回負數,0,正數來表明已經存在的對象小于,等于,大于輸入對象。

        Java提供了包含compare()和equals(兩個方法的Comparator接口。compare()方法用來給兩個輸入參數排序,返回負數,0,正數表明第一個參數是小于,等于,大于第二個參數。equals()方法需要一個對象作為參數,它用來決定輸入參數是否和comparator相等。只有當輸入參數也是一個 comparator并且輸入參數和當前comparator的排序結果是相同的時候,這個方法才返回true。

        28.什么是Java優先級隊列(Priority Queue)?

        PriorityQueue是一個基于優先級堆的無界隊列,它的元素是按照自然順序(natural order)排序的。在創建的時候,我們可以給它提供一個負責給元素排序的比較器。PriorityQueue不允許null值,醫為他們沒有自然順序,或者說他們沒有任何的相關聯的比較器。最后,PriorityQueue不是線程安全的,入隊和出隊的時間復雜度是O(log(n))。

        29.你了解大0符號(big-O notation)么?你能給出不同數據結構的例子么?

        大0符號描述了當數據結構里面的元素增加的時候,算法的規模或者是一個漸進上界。

        大0符號也可用來描述其他的行為,比如:內存消耗。因為集合類實際上是數據結構,我們一般使用大0符號基于時間,內存和性能來選擇最好的實現。大0符號可以對大量數據的性能給出一個很好的說明。

        30.如何權衡是使用無序的數組還是有序的數組?

        有序數組最大的好處在于查找的時間復雜度是O(loq n),而無序數組是O(n)。有序數組的缺點是插入操作的時間復雜度是O(n),因為值大的元素需要往后移動來給新元素騰位置。相反,無序數組的插入時間復雜度是常量O(1)。

        31.Java集合類框架的最佳實踐有哪些?

        根據應用的需要正確選擇要使用的集合的類型對性能非常重要,比如:假如元素的數量是固定的而且能事先知道,我們就應該用Array而不是ArrayList。

        有些集合類允許指定初始容量。因此,如果我們能估計出存儲的元素的數目,我們可以設置初始容量來避免重新計算hash值或者是擴容。

        為了類型安全,可讀性和健壯性的原因總是要使用泛型。同時,使用泛型還可以避免運行時的 ClassCastException。

        使用JDK提供的不變類(immutable class)作為Map的鍵可以避免為我們自己的類實現hashCode(和equals()方法。

        編程的時候接口優于實現。

        底層的集合實際上是空的情況下,返回長度是0的集合或者是數組,不要返回null。

        32.Enumeration接口和lterator接口的區別有哪些?

        Enumeration速度是Iterator的2倍,同時占用更少的內存。但是,lterator遠遠比Enumeration安全,因為其他線程不能夠修改正在被iterator遍歷的集合里面的對象。同時,Iterator允許調用者冊除底層集合里面的元素,這對Enumeration來說是不可能的。

        33.HashSet和TreeSet有什么區別?

        HashSet是由一個hash表來實現的,因此,它的元素是無序的。add(,remove(),contains()方法的時間復雜度是O(1)。

        另一方面,TreeSet是由一個樹形的結構來實現的,它里面的元素是有序的。因此,add(, remove),contains(方法的時間復雜度是O(logn)。

        34.Java中垃圾回收有什么目的?什么時候進行垃圾回收?

        垃圾回收是在內存中存在沒有引用的對象或超過作用域的對象時進行。

        垃圾回收的目的是識別并且丟棄應用不再使用的對象來釋放和重用資源。

        35.System.gc()和Runtime.gc()會做什么事情?

        這兩個方法日來提示VV要進行垃圾口收。但是,立即開始還是處識進行垃圾口收是取決于V

        的。

        36.finalize(方法什么時候被調用?析構函數(finalization)的目的是什么?

        垃圾回收器(garbage collector)決定回收某對象時,就會運行該對象的finalize()方法但是在Java中很不幸,如果內存總是充足的,那么垃圾回收可能永遠不會進行,也就是說filalize()可能永遠不被執行,顯然指望它做收尾工作是靠不住的。那么finalize()究竟是做什么的呢?它最主要的用途是回收特殊渠道申請的內存。Java程序有垃圾回收器,所以一般情況下內存問題不用程序員操心。但有一種JNI(Java Native Interface)調用non-Java程序(C或C++),finalize()的工作就是回收這部分的內存。

        37.如果對象的引用被置為null,垃圾收集器是否會立即釋放對象占用的內存?

        不會,在下一個垃圾回收周期中,這個對象將是可被回收的。

        38.Java堆的結構是什么樣子的?什么是堆中的永久代(Perm Gen space)?

        JVM的堆是運行時數據區,所有類的實例和數組都是在堆上分配內存。它在JVM啟動的時候被創建。對象所占的堆內存是由自動內存管理系統也就是垃圾收集器回收。

        堆內存是由存活和死亡的對象組成的。存活的對象是應用可以訪問的,不會被垃圾回收。死亡的對象是應用不可訪問尚且還沒有被垃圾收集器回收掉的對象。一直到垃圾收集器把這些對象回收掉之前,他們會一直占據堆內存空間。

        永久代是用于存放靜態文件,如Java類、方法等,持久代對垃圾回收沒有顯著影響,但是有些應用可能動態生成或者調用一些class,例如Hibernate等,在這種時候需要設置一個比較大的持久代空間來存放這些運行過程中新增的類,永久代中一般包含:

        類的方法(字節碼…)

        類名(Sring對象)

        class文件讀到的常量信息

        class對象相關的對象列表和類型列表(e.g.方法對象的array)

        JVM創建的內部對象

        JIT編譯器優化用的信息

        39.串行(serial)收集器和吞吐量(throughput)收集器的區別是什么?

        吞吐量收集器使用并行版本的新生代垃圾收集器,它用于中等規模和大規模數據的應用程序。而申行收集器對大多數的小應用(在現代處理器上需要大概100M左右的內存)就足夠了。

        40.在Java中,對象什么時候可以被垃圾回收?

        當對象對當前使用這個對象的應用程序變得不可觸及的時候,這個對象就可以被回收了。

        41.JVM的永久代中會發生垃圾回收么?

        會,如果永久代滿了或者是超過了臨界值,會觸發完全垃圾回收(Full GC)。如果你仔細查看垃圾收集器的輸出信息,就會發現永久代也是被回收的。這就是為什么正確的永久代大小對避免Full GC是非常重要的原因。請參考下Java8:從永久代到元數據區

        (注:Java8中已經移除了永久代,新加了一個叫做元數據區的native內存區)

        42.Java中的兩種異常類型是什么?他們有什么區別?

        Java中有兩種異常:受檢查的(checked)異常和不受檢查的(unchecked)異常。不受檢查的異常不需要在方法或者是構造函數上聲明,就算方法或者是構造承數的執行可能會拋出這樣的異常,并且不受檢查的異常可以傳播到方法或者是構造函數的外面。相反,受檢查的異常必須要用throws語句在方法或者是構造函數上聲明。這里有Java異常處理的一些小建議。

        43.Java中Exception和Error有什么區別?

        Exception和Error都是Throwable的子類。Exception用于用戶程序可以捕獲的異常情況。Error定義了不期望被用戶程序捕獲的異常。

        44.throw和throws有什么區別?

        1、Throw用于方法內部,Throws用于方法聲明上

        2、Throw后跟異常對象,Throws后跟異常類型

        3、Throw后只能跟一個異常對象,Throws后可以一次聲明多種異常類型

        45.異常處理完成以后,Exception對象會發生什么變化?

        Exception對象會在下一個垃圾回收過程中被回收掉。

        46.finally代碼塊和finalize()方法有什么區別?

        無論是否拋出異常,finally代碼塊都會執行,它主要是用來釋放應用占用的資源。finalize()方法是 Object類的一個protected方法,它是在對象被垃圾回收之前由Java虛擬機來調用的。

        47.什么是Applet?

        java applet是能夠被包含在HTML頁面中并且能被啟用了java的客戶端瀏覽器執行的程序。Applet主要用來創建動態交互的web應用程序。

        48.解釋一下Applet的生命周期

        applet可以經歷下面的狀態:

        Init:每次被載入的時候都會被初始化。

        Start:開始執行applet。

        Stop:結束執行applet。

        Destroy:卸載applet之前,做最后的清理工作。

        49.當applet被載入的時候會發生什么?

        首先,創建applet控制類的實例,然后初始化applet,最后開始運行。

        50.Applet和普通的Java應用程序有什么區別?

        applet是運行在啟用了java的瀏覽器中,Java應用程序是可以在瀏覽器之外運行的獨立的Java程序。但是,它們都需要有Java虛擬機。

        進一步來說,Java應用程序需要一個有特定方法簽名的main函數來開始執行。Java applet不需要這樣的函數來開始執行。

        最后,Java applet一般會使用很嚴格的安全策略,Java應用一般使用比較寬松的安全策略。

        51.Java applet有哪些限制條件?

        主要是由于安全的原因,給applet施加了以下的限制:

        applet不能夠載入類庫或者定義本地方法。

        applet不能在宿主機上讀寫文件。

        applet不能讀取特定的系統屬性。

        applet不能發起網絡連接,除非是跟宿主機。

        applet不能夠開啟宿主機上其他任何的程序。

        52.什么是不受信任的applet?

        不受信任的applet是不能訪問或是執行本地系統文件的Java applet,默認情況下,所有下載的 applet都是不受信任的。

        53.從網絡上加載的applet和從本地文件系統加載的applet有什么區別?

        當applet是從網絡上加載的時候,applet是由applet類加載器載入的,它受applet安全管理器的限制。

        當applet是從客戶端的本地磁盤載入的時候,applet是由文件系統加載器載入的。

        從文件系統載入的applet允許在客戶端讀文件,寫文件,加載類庫,并且也允許執行其他程序,但是,卻通不過字節碼校驗。

        54.applet類加載器是什么?它會做哪些工作?

        當applet是從網絡上加載的時候,它是由applet類加載器載入的。類加載器有自己的iava名稱空間等級結構。類加載器會保證來自文件系統的類有唯一的名稱空間,來自網絡資源的類有唯一的名稱空間。

        當瀏覽器通過網絡載入applet的時候,applet的類被放置于和applet的源相關聯的私有的名稱空間中。然后,那些被類加載器載入進來的類都是通過了驗證器驗證的。驗證器會檢查類文件格式是否遵守Java語言規范,確保不會出現堆棧溢出(stackoverflow)或者下溢(underflow),傳遞給字節碼指令的參數是正確的。

        55.applet安全管理器是什么?它會做哪些工作?

        applet安全管理器是給applet施加限制條件的一種機制。瀏覽器可以只有一個安全管理器。安全管理器在啟動的時候被創建,之后不能被替換覆蓋或者是擴展。

        56.彈出式選擇菜單(Choice)和列表(List)有什么區別

        Choice是以一種緊湊的形式展示的,需要下拉才能看到所有的選項。Choice中一次只能選中一個選項。List同時可以有多個元素可見,支持選中一個或者多個元素。

        57.什么是布局管理器?

        布局管理器用來在容器中組織組件。

        58滾動條(Scrollbar)和滾動面板(JScrollPane)有什么區別?

        Scrollbar是一個組件,不是容器。而ScrollPane是容器。ScrollPane自己處理滾動事件。

        59.哪些Swing的方法是線程安全的?

        只有3個線程安全的方法:repaint(,revalidate(,and invalidate()。

        60.說出三種支持重繪(painting)的組件。

        Canvas,Frame,Panel,和Applet支持重繪。

        61.什么是裁剪(clipping)?

        限制在一個給定的區域或者形狀的繪圖操作叫做裁剪。

        62.Menultem和CheckboxMenultem的區別是什么?

        CheckboxMenultem類繼承自Menultem類,支持菜單選項可以選中或者不選中。

        63.邊緣布局(BorderLayout)里面的元素是如何布局的?

        BorderLayout里面的元素是按照容器的東西南北中進行布局的。

        64.網格包布局(GridBagLayout)里面的元素是如何布局的?

        GridBagLayout里面的元素是按照網格進行布局的。不同大小的元素可能會占據網格的多于1行或一列。因此,行數和列數可以有不同的大小。

        65.Window和Frame有什么區別?

        Frame類繼承了Window類,它定義了一個可以有菜單欄的主應用窗口。

        66.裁剪(clipping)和重繪(repainting)有什么聯系?

        當窗口被AWT重繪線程進行重繪的時候,它會把裁剪區域設置成需要重繪的窗口的區域

        67.事件監聽接口(event-listener interface)和事件適配器(event-adapter)有什么關系?

        事件監聽接口定義了對特定的事件,事件外理器a必須要實現的方法,事件適配器給事件監聽接口提供了默認的實現。

        68.GUI組件如何來處理它自己的事件?

        GUI組件可以處理它自己的事件,只要它實現相對應的事件監聽接口,并且把自己作為事件監聽。

        69.Java的布局管理器比傳統的窗口系統有哪些優勢?

        Java使用布局管理器以一種一致的方式在所有的窗口平臺上擺放組件。因為布局管理器不會和組件的絕對大小和位置相綁定,所以他們能夠適應跨窗口系統的特定平臺的不同。

        70.Java的Swing組件使用了哪種設計模式?

        Java中的Swing組件使用了MVC(模型視圖-控制器)設計模式。

      【java校招面試編程題及答案】相關文章:

      校招面試編程題09-09

      恒生電子校招編程面試技巧08-04

      JAVA面試真題及答案分享09-26

      華為校招面試流程10-18

      比亞迪校招面試經驗10-24

      校招面試怎么準備10-16

      中興校招面試經驗08-07

      java面試題及答案10-27

      2016銀行校招半結構化面試真題06-24

      主站蜘蛛池模板: 隐身的名字| 秀才遇着兵粤语| 牙医姐妹日语版免费播| 神雕侠侣动画版国语| 黑帮大佬的我的365日第二季| 孤独的美食家2024| 《黑色电话2》| 白峰美羽免费在线观看| 淄博烧烤小店每日卖上万烤串| 《雪中悍刀行》第2部| 法国电影墨菲定律| 内膜薄是什么意思| 战狼6免费观看高清下载电影 | A片巜性的暴行高清在线观看| 爱情公寓5在线观看免费完整版| 已婚妇女的下午电影中文| 庆余年1-46集免费观看| 没有过不去的年| 班玛县| 金鸡sss| 美乃雀免费看| 天下第一演员表| 林凡短剧免费观看全集| 新金瓶梅免费下载| 美国娃娃脸4免费播放| 战狼6欧美版免费观看完整版国语在 | 哈利波特5在线观看免费完整版高清 | 黄yyid频道| 日韩电影《女律师的坠落》| 舌尖上的粤语| 阁楼里的外星人| 特殊美容师待遇4 | 《花琉璃轶闻》电视剧| 梁小菊的春天| 激战酒店| 火凤凰传奇电视剧| 青瓶梅电视剧在线观看免费| 地球上的星星2全集观看| 凶手的样子电视剧免费观看| 年轻的教师在线观看免费中字的| 电影:《血战长津湖》| 法国少女农场2中文版在线观看| 故乡的泥土全剧免费观看| 丰满女学生3| 来不及了在车CH| 猫愿三角恋第二季| 年轻瘦了4| 明日战记在线观看免费完整版| 插曲的痛在线免费观看| 发际红第四部| 肆一的生活记录最新视频 | 赘婿电视剧在线观看| 姐姐免费观看国语电影| 爱的疯狂| 酒店1~80集| 《怦然与你》| 修理工的艳遇三级片| 战狼2电影观看| 和部长一起泡温泉| 刺客伍六七第4季免费观看| 杰克逊MV| 星际传奇2| 读心专家电视剧| 爱唯侦查dvd| 抗美援朝电影大全免费观看| 一闪一闪亮星星电视剧| 妻子的新世界电视剧免费观看高清| 寡妇一夜爽了六次| 都挺好 电视剧在线看| 突如其来的假期电视剧免费观看| 之后2第二季免费完整观看| 战狼6高清完整免费观看 | 《女超人麦乐迪》| 仔仔影视| 许冠文粤语电影| 箭在弦上12| 金汉斯电话| 交换韩国| 当男孩遇见男孩| 私人女性监| 大耳朵图图3部全集| 凌云壮志(法国)满天星| 剑网3坐骑| 美姐妹牙医1986版| 唐朝诡事录电视剧免费观看完整版| 坏男人你很酷| 蒙古草原天气晴| 那些花儿王菲| 哥哥姐姐的花样年华电视剧| 波多野吉衣销魂120分钟电影| 宁夏杀人案| 无憾坎贝尔电影免费播放| 新猫和老鼠全集| 公主嫁到大结局| 美国睫毛膏3免费播放| 铜牙铁齿纪晓岚| 战狼6高清中文字幕下载| 半熟恋人第十期| 神鬼战士满天星版| 圣诞之吻第二季| 天亮以后| 我们高清在线观看免费观看| 铃芽户缔免费完整版| 步步沉溺短剧全集免费观看| 《一路繁花2》全集| 爱丫爱丫免费国语高| 迪斯科舞厅| 《农场保卫战》满天星法国| 匿杀电影| 混血儿的摇篮| 境界的轮回| 凌云壮志(欧美)满天星小娅是谁演的 | 国产在线观看免费全集电视剧大全| 喜盈门电影免费播放| 恋夏38度| 《我的游泳女教练》| 真假千金:真千金是大佬短剧全集| 一中学8个体育老师5个是班主任| 木下檀檀电影免费完整版 | 今天的她们在线电视剧免费播放| 毒医肥尸无删减在线播放第一季| 结婚前规则电视剧免费观看高清| 修理工的艳福在线观看| 蜜中妻ova无修版国语版| 荣誉守则翻拍版成人版 | 卖房子的女销售在线| 戒烟不戒酒电视剧| 最棒的爱人诏免费观看| 濑亚美莉作品集| 河南豫剧全场戏大全| 夏至未至免费观看| 因为不想吃亏韩剧| 高清《白夜行》电影完整版在线观看| 电影:《血战长津湖》| 莫妮卡爱我几何在线观看全集免费播放 | 危险的性爱| 奈克赛斯奥特曼| 少林扫地僧| v酒店第一季完整版| 把娇妻借给朋友泄欲4| 美和花园电影在线观看最新集数| 旧版封神榜| 姨妈战狼10| 风信子开花后怎么处理| 两人世界插曲30分钟| 红唇原唱完整版| 游泳教练在线观看免费更新时间| 电影 1942| 杀手无假期| 高清《复仇轮回》电影 | 电视剧皇太子秘史| 底线电视剧免费观看完整版高清| 狼狈百度影音| 怀念战友原唱歌词| 1992意大利电影地爆天星| 亮剑黄志忠版电视剧| 正在播放:最棒的小三沼泽 与不干涉工作和家庭、只有做爱理想关系的三上悠... | 台剧浪漫女家教免费观看第14集 | 《重启》| 女性3对1:两个人一次性体检2 | 公之手1| 雄狮少年2电影免费完整版| 360大佬爱上我第二季全集观看 | 一路向西电影完整版种子| 星际宝贝第一季国语免费观看| 白日梦我电视剧在线观看免费版| 一天电影剧情简介| 高清《侏罗纪世界》免费观看| 九龙不败免费完整电影高清| 姐姐真漂亮高清BD| 贝蕾魔法| 星汉灿烂在线免费观看| 幸福的黄手帕完整版| 叔母的爱电影免费观看完整版| 姜子牙电影免费完整在线观看| 卖房子的女销售完整版| 黎明前的暗战在线观看| 女儿复仇满天星版| 《最后的羔羊》完整版播放| 厨房的激情| 流星蝴蝶剑电视剧| 壮志凌云2011满天星观看| 2002电影高清完整版在线观看| 美景之屋6新版免费观看| 斗罗大陆177| 义子侵犯| 紫川电视剧| 《社长夫人的美貌》在线观看| 中国女足今晚迎战海地| 老公的瑜伽老师| 火拼全集观看| 一起愁愁30集全集免费看| 漂亮的保姆7免费播放| 《Overflower》| 神探夏洛克电影| 《偷天鉴宝》叶子楣在线| 爱情与灵药完整版| 里沙村兽皇电影免费观看正版高清 | 千尸屋2百度影音| 蕾tsubomi| 法国慢摇| 羊炭疽病| 猪猪侠太阳之子排名| 电影《呼吸》| 早恋电影| 人蛇大战 电影| 农情蜜意| 周立波笑侃三十年| 默杀在线观看完整免费高清| 男乒乓球团体赛决赛直播| 《影》动漫免费观看完整版| 江湖恩仇录86版全集在线观看免费| 《千金》在线完整观看日剧| 乌海 电影| 我们的父辈完整版免费观看| 恶灵骑士2在线看| 电视剧铁道游击队| 金瓶梅2008在线观看| 怪盗基德特别篇全集| 终极三国全集在线观看| 唐朝豪放| 进击的巨人无悔的选择| 爱情公寓3第14集| 春雨电影大全免费观看高清| 东宫西宫下载| 满清十大酷邢| 光环夜幕| 星球大战系列| 角斗士3满天星版| 弃少归来全集免费| 肉蒲团dvd| 北京寿桃| 恐怖食人鱼3| 人间四月天电视剧| 翠兰的爱情 电视剧| 名侦探学院七| 电视剧最后的子弹| 女律师的堕落伦理电影| 极度分裂| 朴亚珍电影HD| 《朋友夫妇:交换》3中文在线| 我年轻瘦子8完整版| 电视剧六姊妹剧情| 拉拉安斋电影完整版| 人生之路电视剧全部免费观看| 醉酒的玫瑰电影完整版| 唐禹哲电视剧| 电影《女儿闺蜜》完整版| 只是结婚的关系电视剧| 西班牙《掌中之物》电影| 律政俏佳人| 砍贝奇品味人生| 《你的孩子不是你的孩子》| 《女学生的滋味》| 色即是空1 qvod| 壮志凌云女版1994年版| 女子输血感染艾滋10年后才发现| 卢佩的玫瑰免费高清版| 罗丽星克莱尔《X迷宫》在线| 女超人麦乐迪无删减版在线观看完整版| 江湖新秩序粤语| 小蜜桃:美丽人生4| 霞姐传奇| 我朋友的姐姐未增删翻译| 民国枭雄| 我喜欢你全集在线观看免费| 拜登与特朗普通话| 鸭王2在线观看免费观看| 天幕下的恋人粤语03| 嫂嫂19岁| 一路向西无删减| 新版笑傲江湖| 床下有人3 电影| 我的妻子免费观看| 太极拳八段锦教学视频| 动漫在线观看免费观看| 假面骑士龙骑美版| 修仙高手短剧全集| 维修工的艳遇理论片| 王者之风| 混血女精油按摩在线观看| 下众的爱| 加勒比海盗完整版1| 丧尸世界大战| 爱唯侦察9集完全版| 雷神暂退好莱坞| 电影《越南妹》99号叫什么名字| 《唐朝诡事录2》| 王世坚《没出息》原版| 《新生》更新| 柜中美人电视剧免费观看完整版| 钢铁森林| 活人配阴婚的后果| 外国电影爸爸的种子在线看 | 漂亮的女客栈| 姐妹牙医免费| 薄冰电视剧免费观看| 特殊的外卖员| 波多结野衣| 成都警方通报天府二街伤害案 | 狂热妈妈第二季在线观看| 龙兄虎弟电影| 迪迦奥特曼在线观看| 哥哥的老婆韩国电影| 德令哈一夜刀郎原唱| 叶玉卿电影全高清| 花与蛇牙医电影完整版| 逆袭的第二名| 台剧浪漫女家教免费观看 | 《天字号监狱》电影在线观看免费高清 | 飞哥大英雄全集在线观看| 乡村爱情10 下载| 电视剧银杏飘落| 《幸福到万家》| 新尸骨无存| 以和为贵国语| 幻想1998罗丽星克莱尔| 电影原始武器| 法国空乘2023无删减版| 男生和女生拔萝卜| 埃及皇后3满天星版| 就是闹着玩的| 大侦探波罗电影| 插曲视频在线观看中文| 如懿传全集免费完整版在线观看| 九重紫电视剧在线播放| 久保同学不放过第一季免费观看 | 法国监狱2在线观看完整版高清| 电影《美容院的特殊待遇》1演员表 | 木下檀子的电影免费观看国语完整版 | 拔萝卜电影| 仲文你好vlog最新| 女战狼10免费播放在线观看西瓜| 咒术回战电影| 韩剧《装修去闺蜜家》| 隋唐演义一共多少集| 《完美邻居》电影免费观看| 环太平洋1| 大唐来的苏无名| 他和他的他| 惊天危机高清| 电影美式忌保罗讳| 人间正道是沧桑50集全免费观看| XL司令在线免费观看| 不怕开水烫| 暴躁少女在线观看免费版英文| 悬崖上的金鱼公| 惊变28周 电影| 办公室卫生标准| 末日卷轴| 隔着帘子羞耻精油按摩在线看| 美国加州爆发大规模街头斗殴| 在线观看私人航空| 再见莫妮卡| 圣特罗佩斯的姑娘们1982 满天星 金瓶梅电视剧全集电视剧在线看免费观看 | 大宋少年志2免费完整版| 920美影| 无限斯特拉托斯第二季| 欧洲N00N兽交剧| 法国电影《塔日酒店》| 《恋爱禁区》电影| 义姐是不是良妈| 丁宝桢电视剧免费观看| 克拉玛依市| 哥特洛丽塔处刑人| 诺丁山的梦| 1984美式保罗2| 反击第一季| 泰国十部必看的满天星电影| 劝君王饮酒听虞歌| 房奴试爱电视剧原声开头| 青丝APP| 安非他命电影| 《房奴试爱》| 红灯记伴奏| 需要爸爸的种子在线观看完整版| 秘书在办公室被躁BD在线小说| 女版古墓丽影满天星全集| 遗忘诗行| 麦西来甫| 亲爱的妈妈西瓜影院| 乌龙元首| 晚安为我而眠的妹妹免费观看| 蝴蝶效应1| 插曲的痛30集全免费观看大结局| 强者风范在线观看| 藏族踢踏舞组合| 漂亮小瘦子7免费播放电视剧西瓜视频| 追龙 粤语| XL司令第一季免费全集在线观看| 纸上谋杀| 豺狼的日子| 翁虹艳电影全集| 返老还童 在线看| 义子侵犯电影看| 河南林州通报男子举报公检法| 牙医姐妹电影在线观看| 帝国的隐忍| 《我的孩子我的家》电视剧| 高清《极乐宝鉴2》在线观看国语| 陈冠希道歉| 《圣特罗佩斯的姑娘们》在线观看 | 给我完整版在线观看| 《她被搬运工侵犯》电影观看 | 电影《天空》完整版| 神奇女侠成人H版在线| 女医生电影在线完整免费观看 | 最美的安排电视剧| 七三一电影高清在线播放免费观看| 卖房的女销售在线观看| 超科学的电磁炮| 需要爸爸的种子美国| 长风渡电视剧免费观看| 高清临租家庭未删减| 香瓜七兄弟| 狼毒人电视剧全集在线观看免费高清| 女超人麦乐迪电影无删减在线观看完整免费| 老田de幸福生活| 女子护卫队电影在线观看完整免费高清原声满天星 | 冷山在线观看| 喜爱夜蒲1快播| 北越暴行3全集在线播放| 西班牙肉体之罪未删减版| 兽皇村上沙正版电影免费观看| 林由奈jufd467在线播放 | 祥仔视觉| 我从不忠截取的一段画面| 《21世纪Xa指南》完整版| 隔壁的女孩儿| 皎洁迎宵之月未删减| 如是非迎| 五哈第二季| 白峰电影在线观看高清版| 少年方世玉张卫健高清| 米小圈把李黎亲哭了| 成熟玫瑰| 铁血壮士电视剧| 特殊的待遇5| 台州学院附中| 美女吃男生的肌| 浪荡子的性爱旅程| 复仇者联盟3神马抢先版| 出差遇到垃圾前任电影完整版在线观看 | 丰满的女邻居在线观看| 某科学超电磁炮s| 沐浴之王演员| 高清钻石王牌 第四季| 法国空姐第五季国语版免费观看| 《沧元图2》在线观看| 大炕上的肉伦第二部| 沐浴之王演员| 黑暗荣耀第二季第五集30分25秒| 插曲的痛60集全集免费| 奇妙的美发沙龙2| 侠客行不通免费观看| 蓝宝石之谜 重制版| 斯戴佛的妻子们| 姐妹牙医完整版| 杨乃武与小白菜粤语版| 熊出没之年货动画片| 香奈儿版满天星古墓丽影| 初体验3在线| 周弘《村姑》1994年版| 猫和老鼠陕西方言版全集| 爸爸我要你的种子在线观看| 《真实》崔雪莉多少秒出场| 奸魔者| 芸汐传电视剧免费观看全集完整版 | 巡回检察组35集在线观看免费| 重生之锦绣嫡女短剧全集| 爱唯侦察9集完全版| 神探科蓝电视剧| 憨豆特工1电影| 木下檀檀| 第十九层电视剧| 《白衣绳索牙医生》剧情介绍| 梅根2.0电影| 高清《功夫梦:融合之道》电影| 女版超人满天星| 性解密西瓜| 高清招魂4:终章未删减| 绝对防卫利维坦| 茶杯犬要多少钱| 《维修师傅的艳遇HD》中文| 熟睡中被义子侵犯中字| 美国式禁忌19| 宝贝腿开大点我添添摸摸免费视频| 天际歌曲原唱| 《楠木邸的神明庭院》| 酒店1-75集免费观看国内| 科洛斯风云| 刻薄新娘| 善良丰满的继牳3| 听不见的爱短剧免费观看| 《壮志凌云》凯登克罗斯版演员表| 裸婚时代全集| 隐形战队粤语电视剧免费观看| 美发店的待遇5HD| 棋魂免费观看全集在线观看| 电锯人动画第一季在线观看| 繁华落尽电视剧免费观看| 《小麦进城》免费看| 玛丽玛丽满天星| 大内密探零零发粤语高清| 火红的日子| 激战丛林h| 钱塘传奇电视剧| 小仓尤子| 男按摩师A片免费看 | 在线观看私人航空| 碧海逃生电影免费观看完整版 | 渔夫荒野史记在线完整版免费观看| 黑暗荣耀1| 年少日记| 满天星《交易》凯登| 世上只有妈妈好电视剧全集免费 | 电视剧前妻的车站| 警察锅哥播放电视剧一共40集| 罪恶黑名单第一季| 战狼6女版高清免费看| 《我要再来一次》完整版在线观看 | 超新星闪电武士| 不文女学堂快播| 黑人大鸡巴干俄罗斯美女彩蝶视频 | 甲种公牛1976意大利| 禁爱孽渊| 喜爱夜蒲ed2k| 按摩四位少妇| 我的妈妈是校花未删减 | 珠光宝气粤语| 孽欲隔墙花| 酒店服务生满天星法版免费观看星辰影院| 两个爸爸电视剧全集观看| 高清泰迪熊 第二季未删减| 美乃雀赎罪电影哪里看 | 奇妙真相视频全集免费| 嫣语赋在线观看| 暴躁46集在线观看电视剧免费全集| 昨夜之灯| 大秦赋全集| 束缚游戏在线观看完整免费版| 女机器人全集高清免费观看| 韩剧三个爸爸一个妈| 《地味变2》免费观看| 白日焰火免费完整版| 孤独一掷免费完整观看高清2023| 王多鱼打扑克牌免费视频| 火箭军原副司令员吴国华病逝| 兔子帮19| 林正英僵尸全集国语| 母亲5集全集免费观看完整版| 法版高压监狱2小时45分| 无颜之月1到5集全集观看电视剧| 舒淇电影玉女心经| 《激战丛林》在线观看 | xl司令第一季免费全集在线观看| 泰剧大全电视剧大全免费观看| 婚词离曲电视剧| 渔夫荒野史记1988版七| 爱情面前谁怕谁28集| 美人心计全集在线观看| 女泳永教练的欲望| 坂口美穗乃| 约翰尼盖尔克奇| 《Overflower》| 斗罗大陆第144集免费观看| 卖房子的女销售3免费| 火拼全集观看| 换妻换上瘾| 蓝色水玲珑台湾电视剧免费| 蜗居电视剧35剧情全集在线观看| 莫妮卡《满天星》播放| 最美孝心少年2020颁奖典礼| 我在北京挺好的剧情| 罗丽星克莱尔电影在线观看| 慈禧的秘密生活未删减| 以你的心诠释我的爱泰剧免费观看| 詹妮弗康纳利的满天星是哪部电影| 大江大河2一共多少集| 亲爱的吾兄免费观看完整版电视剧| 坎贝奇品味人生完整观看| 张靓颖 奥普拉| 尸变菌株电影免费完整版在线观看| 战狼6大牛老黑免费观看| 多样的儿媳| 王爷追妻忙:王妃要和离全集免费| 湿润的继拇HD中文| 异动公告被取消?系误读| 电视剧金太狼的幸福生活| 女教师洗澡被学生强伦| 把娇妻借给朋友泄欲4| 甜蜜惩罚3未增删带翻译整集| 日本女人勾引水电工视频在线免费观看| 甄嬛传74集| 敦刻尔克电影在线观看免费完整版| 私人航空2免费观看全集| 天使衣橱| 女人花免费观看大全电视剧武则天| 赛仑《渔夫的妻子》| 似火流年电视剧| 从奴隶到将军| 诱人的私人瑜伽教练| 牛莉电视剧| 雌雄大盗| 荷尔蒙6美国| 狂野式到轮式的转换技巧| 忍者一时| 高压监狱电影在线观看完整免费高清原声满天星在线 | 2对1:三人一次性体检在线观看中文字 | 电视剧流金岁月港台剧| 杨紫回应五官乱飞| 人猿泰山1995版全集| 五亿探长雷洛传1粤语版免费观看 《美景之屋4》无删减裸露版 | 头号公敌| 急速绯闻| 儿子高中了非要我| 恋之罪电影| 车手在线观看| 风筝电视剧完整版| 《少女大人》在线观看| 国子监来了个女弟子剧情介绍| 别动我的奶酪第二季免费动漫| 快餐车免费| 我的上司尺码是XL类似| 罗丽星克莱尔性迷宫片长 | 同学的家长3| 千年僵尸王国语版高清| 鬼请你睇戏| 妈妈的职业2hb| 天神地兽金刚全集| 《我是歌手》第三季| 强奸2电影| 电影小兵张嘎免费观看| 法医追凶| 日剧电影维修工人的艳遇| 高清《致命弯道11》| 王牌大贱谍2008| 苍月战士H成人版| 江湖新秩序粤语| 人世间58集电视剧免费看| 日本战狼10电影免费播放国语| 播放妈妈我爱你| 中国老师在英国| 韩国三级片有求必应| 订阅男友| 良师男友电视剧| 水手服饰育完整版| 下一站是幸福在线观看全集| 大漠苍狼电视剧| 酒店1-75集免费播放电影| 无法拥抱的你第二季电视剧| 爸爸去哪儿第四季| 《混血的摇篮曲1973》日本版| 自古英雄出少年全集| 高清《堕落》| 杨颖发文回顾心动的信号| 法国空姐2完整版免费播放 | melody女超人在线观看| 今天的她们电视剧免费观看| 东京妓院| 林芝县| 吾妻正斗| 同居的日子| 搞笑影视| 特殊销售现在播放| 足球小子小学国语版全集| 锵锵三人行 王朔| 玄好心经9| 《蜜桃成熟时3》电影| 父亲微电影| 瑜伽老师诱惑2| 雍正王朝雍正继位是哪一集| 人民的名义未删减版有多少集| 美国式保罗| 五福临门在线观看| 天注定高清在线观看| 十八岁以上免费观看电视剧| 需要爸爸播种 播放| 高清《纠缠》24年最新上映的电影| 《新聊斋志异》电视剧| 被凌辱的妻子在线观看| 黑暗荣耀第二季百度云| 孤儿怨在线| 壮志凌云2010法国满天星 | 我心蔚蓝| 和讨厌的部长出差旅bd | 芭比与胡桃夹子的梦幻之旅| 沉默的羔羊在线观看| 马戏团高清完整版在线观看| 《overflower》真人版在线| 熊出没之城市大冒险| 两女一指完整版| 需要爸爸播种籽2演员名字全集 | 销售的销售秘密6| 僵尸肖恩下载| 辱华dg| 特殊酒店在线观看完整版免费| 劈雳mit| 何以为家电影| 犹及清明可到家的上一句是什么| 电影韩国r| 杨思梅敏金瓶完整国语| 新娘之真爱| 《陪部长出差的HR》| 东京猫猫全集| 黑夜传说4 觉醒| 爱情不设限第一季无删减版在哪看| 战狼6大牛影库| 骄阳伴我电视剧免费观看极速| 牙狼炎之刻印| 一起愁愁电视剧40集在线观看 | 战狼6在线观看免费版高清视频| 铁扇公主肚子疼| 加菲猫家族中文版电影免费观看| 隐形的帽子韩剧| 德川责罚地狱| 黑暗之魂好玩吗| 善良的嫂子2 电影| 播放 - 女律师的堕落高清 - 剧情电影 - 973影视| 七仙女思春(正片)| 七尺男儿| 皇上当着大臣宠幸她| 女超人麦乐迪在线完整版免费观看视频| 恋爱吧食梦君| 第一次的滋味免费观看电视剧| 意大利电影《情迷2》的剧情简介| 与凤行在线观看全集完整版电视剧| 满天星电影在线观看完整免费高清 | 纠正强制接种新冠疫苗现象| 喜羊羊与灰太狼竞技大联盟| 言情片《邻家女人:丈夫不在的日子》HD无字免费高清在线观看完整版_tvb云播 | 强奸轮奸影片免费播放 | 姐妹花爱上我| 房奴试爱电视剧第一集开头| 恶作剧之吻第二部04| 《人体蜈蚣》| 50岁阿姨大人免费观看电视剧手机版 | 韩国房产销售的秘密在线观看| 漂亮姨太太电视剧| 最近日本电影高清免费观看| 大鹏电影大赢家免费观看| 销冠的秘密3在线| 斗破乱世情| 尘封十三载电视剧免费观看全集| 商务老板旅行戴的帽子电影在线观看 | 良药苦口 第一季| xl司令在线观看完整版动漫免费| 3d肉铺团在线播放| 赛罗奥特曼国语| 妻子游泳教练HD中字| 哈利波特与密室电影原版| 瓦尼塔斯的手记动漫在线观看 | 京圈太子爷每天都想转正| 长相思古装剧免费观看49集| 《特邀外卖员》完整版| 鹿鼎记黄晓明版粤语| 电视剧陆贞传奇全集| 电影平凡英雄免费观看| 秘书2| 擅长捉弄人的高木同学| 门事件曝光国产在线| 吴旗县| 妈妈的职业2hb| 乡村老尸全集| 以法之名电视剧全集| 谎言与间谍啄木鸟2剧情简介| 星际迷航3超越星辰迅雷下载| 鬼吹灯湘西怒晴| 奔跑吧 第八季 2024| 急情从林| 《克里斯蒂的秘密》电影在线观看| 吞噬星空106集| 情逢敌手| 凯帕克康体水疗电影在线观看| 罗颖黄瑞恩官宣分手| 生化危机3 灭绝| 美国《行政助理》2014| 倔强的驱魔师1-4集免费观看| 善良的小嫂子| 最后的幸存者电影免费完整版| 美景2老板娘看上员工| 铠甲勇士刑天后传全集播放| 校墓处1| 优雅的家电视剧免费观看全集韩剧| 法国电影《卖百科全书》在线| 甄嬛传45| 七十二家房客第九季| 高清《法国空乘2019》播放| 克罗斯凯登电影| 还珠格格新版| 布拉格之恋下载| 宁晋县| 暴躁46集正版在线观看| 《陈宝莲版武则天秘史》| 东风破mv下载| 三年中国高清在线观看| 激战后厨72小时| 让子弹飞无删减完整版谍战迷| 梦十vs西班牙| 坎贝奇第二部曲品味人生电影| 真心想让你幸福免费观看全集| 电影心灵奇旅| 善良的小姨子影院| 做aj的电视剧大全香港| 穿越幸福:农家女全集免费| 从结婚开始恋爱35集全集免费观看| 依然闪亮| 驯服小胰子2| 联手复仇虐渣:双胞胎姐妹全集免费 | 大连市| 上司来我家做客 完整版中字 | 三妻四妾电视剧免费观看| 美国1—5普通话免费 | 私人定制在线观看| 通许县| 天美传奇在线观看免费播放| 战乙女瓦尔基里全集免费观看高清 | 锵锵锵锵观看在线观看电视剧| 新精武门周星驰| 高清安身何处| 龙哥游戏库| 法国女超人电影版在线| 虎胆龙威5迅雷下载| 美丽小蜜桃7免费播放全集电视剧| 小心肝儿美国电影免费观看完整版| 牙医姐妹赤子板栗在线电影完整版播放 | 《家政老师2》免费观看韩剧| 她的神话 电视剧| 欧式少女17集全集在线看视频网站下载| 塔尔萨之王免费观看西瓜| 秋瓷炫生死决断电影在线 | 短剧《她不乖》全集免费观看| 高清《爱上朋友的母亲》电影| 假面骑士铠武20| 天海翼搜查官在线观看| 免费观看熊出没之逆转时空| 咱们结婚吧28| 真咲恵美| 替夫还债中文电影版在线观看| 大牛荷尔蒙6免费全集观看| 唐朝异闻录在线看| 工作女郎韩国电影| 小旅馆的肥熟老女人| 满天星版《罪恶女人》| 高压监狱满天星在线观看完整版| 奥伊米亚康村| 猎罪图鉴1免费看完整版| 高压监狱2016满天星法版免费| 小麻薯手帐贴纸教程| 现世因果教育| 我的爱蝴蝶夫人剧情介绍|