日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基础面试题

發布時間:2023/12/14 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基础面试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這里寫自定義目錄標題


文章目錄

  • 面向對象的特征有哪些方面?
  • 抽象類與接口的異同:
  • 簡單說一下常見的數據結構:
  • 什么是向上轉型?什么是向下轉型?
  • 比較一下String與StringBuilder
    6.什么是泛型通配符?什么是泛型的上下限?
  • 線程有幾種狀態?它們是怎么切換的?
    8.什么是線程池?線程池有什么優點?
  • 你對Java內存分配了解多少?簡單談談:
    1. 程序計數器
    2 Java虛擬機棧
    3 本地方法棧
    4 Java堆
    5 方法區
  • 談談你對static的了解
    1.static方法
    2.static變量
    3.static代碼塊
    4.靜態內部類
    5.靜態導包
    11.什么是方法?談談你對方法的理解
    1.概念
    2.格式
    3.注意事項
    4.方法的重載:
    5.方法的重寫:
    6.方法的遞歸:
    12.內部類有哪些種類?又有哪些使用場景?
    13.談談串行、并行、并發、分布式?
  • 面向對象的特征有哪些方面?
    答:面向對象的特征主要有以下幾個方面:
    1.封裝:
    封裝是把過程和數據包裹起來,外界對于數據的操作僅限于我們提供的方式。我們可以將生活中各種事物進行抽象封裝形成類,也可以通過private修飾符來封裝屬性與方法,不過需要注意的是,封裝后需要手動提供對應被封裝資源對外公共的操作方式。
  • 2.繼承:繼承是一種聯結類的層次模型,并且允許和鼓勵類的重用,它提供了一種明確表述共性的方法。我們可以從現有的類中派生出一個新的類,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那里繼承方法和實例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。

    3.多態性:多態性是指可以盡量屏蔽不同類的差異性,提供通用的解決方案。多態性語言具有靈活、抽象、行為共享、代碼共享的優勢,很好的解決了應用程序函數同名問題。我們所使用的有:
    向上造型【將子類對象統一看作父類型,比如花木蘭替父從軍】
    向下造型【將之前看作父類型的子類對象再重新恢復成子類對象,比如花木蘭打仗結束回家化妝】

    4.抽象:抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象并不打算了解全部問題,而只是選擇其中的一部分,暫時不用部分細節。抽象包括兩個方面,一是過程抽象,二是數據抽象。

  • 抽象類與接口的異同:
    抽象類:
    抽象方法必須用abstract關鍵字進行修飾。如果一個類含有抽象方法,則稱這個類為抽象類,抽象類必須在類前用abstract關鍵字修飾。因為抽象類中含有無具體實現的方法,所以不能用抽象類創建對象。
    抽象類可以擁有成員變量和普通的成員方法。
  • == 抽象類和普通類的主要有三點區別:==
    1)抽象方法必須為public或者protected(因為如果為private,則不能被子類繼承,子類便無法實現該方法),缺省情況下默認為public。
    2)抽象類不能用來創建對象;
    3)如果一個類繼承于一個抽象類,則子類必須實現父類的抽象方法。如果子類沒有實現父類的抽象方法,則必須將子類也定義為為abstract類。

    接口:
    接口中的變量會被隱式地指定為public static final變量,并且只能是public static final變量,用private修飾會報編譯錯誤,而方法會被隱式地指定為public abstract方法且只能是public abstract方法,用其他關鍵字,比如private、protected、static、 final等修飾會報編譯錯誤,并且接口中所有的方法不能有具體的實現,也就是說,接口中的方法必須都是抽象方法。
    抽象類和接口的區別:
    語法層面上的區別
    1)一個類只能繼承一個抽象類,而一個類卻可以實現多個接口
    2)抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是public static final類型的
    3)接口中不能含有靜態代碼塊以及靜態方法,而抽象類可以有靜態代碼塊和靜態方法
    4)抽象類可以提供成員方法的實現細節,而接口中只能存在public abstract 方法
    5)抽象類的抽象方法可以是public,protected,default類型,而接口的方法只能是public
    設計層面上的區別
    1)抽象類是對一種事物的抽象,即對類抽象,而接口是對行為的抽象。抽象類是對整個類整體進行抽象,包括屬性、行為,但是接口卻是對類局部(行為)進行抽象
    所以抽象是重構的結果,接口是設計的結果。
    2)設計層面不同,抽象類作為很多子類的父類,它是一種模板式設計。而接口是一種行為規范,它是一種輻射式設計。

  • 簡單說一下常見的數據結構:
    1.棧Stack:
    又稱堆棧,它是運算受限的線性表,其限制是僅允許在標的一端進行插入和刪除操作,不允許在其他任何位置進行添加、查找、刪除等操作。
    我們可以簡單理解成:棧結構對元素的存取有如下要求:
    先進后出(也就是說,棧中越早存進去的元素,就越在最下面)
    例如:子彈壓進彈夾,先壓進去的子彈在下面,后壓進去的子彈在上面,當開槍時,先彈出上面的子彈,然后才能彈出下面的子彈。
    所以,棧的入口、出口的都是棧的頂端位置。我們需要知道兩個名詞:
    1)壓棧:就是存元素。即,把元素存儲到棧的頂端位置,棧中已有元素依次向棧底方向移動一個位置。
    2)彈棧:就是取元素。即,把棧的頂端位置元素取出,棧中已有元素依次向棧頂方向移動一個位置。
  • 2.隊列queue:
    又稱隊,它同堆棧一樣,也是一種運算受限的線性表,其限制是僅允許在表的一端進行插入,而在表的另一端進行刪除。
    我們可以簡單理解成:隊列結構對元素的存取有如下要求:
    先進先出(也就是說,最先存進去的元素,是可以最先取出的)
    例如:我們生活中排隊買結賬,最先到的人最先付款,最后到的人得等前面的人都付款結束后才能付款。
    所以:隊列的入口、出口各占一側

    3.數組Array:
    是有序的元素序列,數組是在內存中開辟一段連續的空間,并在此空間存放元素。就像是一列火車,從1號車廂到最后一節車廂,每節車廂都有自己的固定編號,乘坐火車的人可以通過車廂號快速找到自己的位置。
    我們可以簡單理解成:數組結構對元素的存取有如下要求:
    查找元素快:通過索引,可以快速訪問指定位置的元素。
    增刪元素慢:
    我們指定一個索引增加元素,不能修改原數組的長度,而是需要創建一個新長度的數組,將指定新元素存儲在指定索引位置,再把原數組元素根據索引,復制到新數組對應索引的位置。
    我們指定一個索引刪除元素:不能修改原數組的長度,而是需要創建一個新長度的數組,把原數組元素根據索引復制到新數組對應索引的位置,原數組中指定索引位置元素不復制到新數組中。

    4.鏈表LinkedList:
    是一系列節點Node(鏈表中每一個元素稱為節點)組成,節點可以在運行時動態生成。每個節點包括兩個部分:一個是存儲數據元素的數據域,另一個是存儲下一個節點地址的指針域。我們常說的鏈表結構有單向鏈表與雙向鏈表。
    我們這里介紹的是單向鏈表。
    我們可以簡單理解成:鏈表結構對元素的存取有如下要求:
    多個節點之間,通過地址進行連接。
    例如:自行車的鏈條,就是通過上一個環連接下一個環,這樣就形成一個鏈條了
    查找元素慢:想查找某個元素,需要通過連接的節點,依次向后查找指定元素
    增刪元素快:
    增加元素:只需要修改連接下個元素的地址即可。
    刪除元素:只需要修改連接下個元素的地址即可。

    5.紅黑樹

    二叉樹BinaryTree:每個節點不超過2的有序樹(tree)
    我們可以簡單理解成生活的樹的結構,只不過每個節點上都最多只能有兩個子節點。
    二叉樹是每個節點最多有兩個子樹的樹結構。頂上的叫根節點,兩邊被稱作“左子樹”和“右子樹”。
    紅黑樹:紅黑樹本身就是一顆二叉查找樹,將節點插入后,該樹仍然是一顆二叉查找樹。也就意味著,樹的鍵值仍然是有序的。紅黑樹的速度特別快,趨近平衡樹,查找葉子元素最少和最多次數不多于二倍

    紅黑樹的特點:

    節點可以是紅色的或者黑色的
    根節點是黑色的
    葉子節點(特指空節點)是黑色的
    每個紅色節點的子節點都是黑色的
    任何一個節點到其每一個葉子節點的所有路徑上黑色節點數相同
    4. 什么是向上轉型?什么是向下轉型?
    在JAVA中,繼承是一個重要的特征,通過extends關鍵字,子類可以復用父類的功能,如果父類不能滿足當前子類的需求,則子類可以重寫父類中的方法來加以擴展。
    那么在這個過程中就存在著多態的應用。存在著兩種轉型方式,分別是:向上轉型和向下轉型。
    向上轉型:可以把不同的子類對象都當作父類來看,進而屏蔽不同子類對象之間的差異,寫出通用的代碼,做出通用的編程,統一調用標準。
    比如:父類Parent,子類Child
    父類的引用指向子類對象:Parent p=new Child();
    說明:向上轉型時,子類對象當成父類對象,只能調用父類的功能,如果子類重寫了父類中聲明過的方法,方法體執行的就是子類重過后的功能。但是此時對象是把自己看做是父類類型的,所以其他資源使用的還是父類型的。
    比如:花木蘭替父從軍,大家都把花木蘭看做她爸,但是實際從軍的是花木蘭,而且,花木蘭只能做她爸能做的事,在軍營里是不可以化妝的。

    向下轉型(較少):子類的引用的指向子類對象,過程中必須要采取到強制轉型。這個是之前向上造型過的子類對象仍然想執行子類的特有功能,所以需要重新恢復成子類對象
    Parent p = new Child();//向上轉型,此時,p是Parent類型
    Child c = (Child)p;//此時,把Parent類型的p轉成小類型Child
    其實,相當于創建了一個子類對象一樣,可以用父類的,也可以用自己的
    說明:向下轉型時,是為了方便使用子類的特殊方法,也就是說當子類方法做了功能拓展,就可以直接使用子類功能。
    比如:花木蘭打仗結束,就不需要再看做是她爸了,就可以”對鏡貼花黃”了

  • 比較一下String與StringBuilder
    String
    特點:創建之后長度內容是不可變的,每次拼接字符串,都會產生新的對象
  • 如果是直接“ ” 或者字符串常量拼接產生的,保存在字符串常量池中
    如果是直接通過new方式創建的,保存在堆中
    創建方式:
    String() String(String s) String(char[] c) String(byte[] b) String s = “abc”;

    優缺點:

    優點:String類提供了豐富的關于操作字符串的方法,比如:拼接、獲取對應下標處的字符、截取子串等等
    缺點:在進行字符串拼接+=的時候,效率比較低
    String轉StringBuilder:
    String s = “abc”; StringBuilder sb = new StringBuilder(s);

    StringBuilder
    特點:StringBuilder是一個長度可變的字符串序列,在創建的時候,會有一個長度為16的默認空間
    當拼接字符串的時候,實在原對象的基礎之上進行拼接,如果長度不夠就擴容
    所以StringBuilder在創建之后,對應的操作一直是用一個對象

    創建方式:
    StringBuilder sb = new StringBuilder();//創建一個長度為16的StringBuilder對象
    StringBuilder sb = new StringBuilder(“abc”);//以指定字符串內容為“abc”的方式創建一個StringBuilder對象

    優缺點:

    優點:在拼接的時候,不會產生新的對象,就避免了因為拼接頻繁生成對象的問題,提高了程序的效率
    缺點:對于字符串的操作,不太方便,所以在使用的時候,如果拼接操作很多的話:
    先將String轉為StringBuilder進行拼接,拼接完成之后再轉回String
    StringBuilder轉String:
    StringBuilder sb = new StringBuilder();
    sb.append(“abc”);
    String s = sb.toString();

    6.什么是泛型通配符?什么是泛型的上下限?
    當使用泛型類或者接口時,傳遞的數據中,泛型類型不確定,可以通過通配符<?>表示。但是一旦使用泛型的通配符后,只能使用Object類中的共性方法,集合中元素自身方法無法使用。

    通配符基本使用
    泛型的通配符:不知道使用什么類型來接收的時候,此時可以使用?,?表示未知通配符。

    通配符高級使用----受限泛型
    之前設置泛型的時候,實際上是可以任意設置的,只要是類就可以設置。但是在JAVA的泛型中可以指定一個泛型的上限和下限。
    泛型的上限:

    格式: 類型名稱 <? extends 類 > 對象名稱
    意義: 只能接收該類型及其子類
    泛型的下限:

    格式: 類型名稱 <? super 類 > 對象名稱
    意義: 只能接收該類型及其父類型
    7. 線程有幾種狀態?它們是怎么切換的?
    線程生命周期,主要有五種狀態:

    新建狀態(New) : 當線程對象創建后就進入了新建狀態.如:Thread t = new MyThread();
    就緒狀態(Runnable):當調用線程對象的start()方法,線程即為進入就緒狀態.
    處于就緒(可運行)狀態的線程,只是說明線程已經做好準備,隨時等待CPU調度執行,并不是執行了t.start()此線程立即就會執行
    運行狀態(Running):當CPU調度了處于就緒狀態的線程時,此線程才是真正的執行,即進入到運行狀態
    就緒狀態是進入運行狀態的唯一入口,也就是線程想要進入運行狀態狀態執行,先得處于就緒狀態
    阻塞狀態(Blocked):處于運狀態中的線程由于某種原因,暫時放棄對CPU的使用權,停止執行,此時進入阻塞狀態,直到其進入就緒狀態才有機會被CPU選中再次執行.
    根據阻塞狀態產生的原因不同,阻塞狀態又可以細分成三種:
    等待阻塞:運行狀態中的線程執行wait()方法,本線程進入到等待阻塞狀態
    同步阻塞:線程在獲取synchronized同步鎖失敗(因為鎖被其他線程占用),它會進入同步阻塞狀態
    其他阻塞:調用線程的sleep()或者join()或發出了I/O請求時,線程會進入到阻塞狀態.當sleep()狀態超時.join()等待線程終止或者超時或者I/O處理完畢時線程重新轉入就緒狀態
    死亡狀態(Dead):線程執行完了或者因異常退出了run()方法,該線程結束生命周期
    就緒 → 執行:為就緒線程分配CPU即可變為執行狀態"
    執行 → 就緒:正在執行的線程由于時間片用完被剝奪CPU暫停執行,就變為就緒狀態
    執行 → 阻塞:由于發生某事件,使正在執行的線程受阻,無法執行,則由執行變為阻塞
    (例如線程正在訪問臨界資源,而資源正在被其他線程訪問)
    反之,如果獲得了之前需要的資源,則由阻塞變為就緒狀態,等待分配CPU再次執行

    8.什么是線程池?線程池有什么優點?
    我們使用線程的時候就去創建一個線程,這樣實現起來非常簡便,但是就會有一個問題:
    如果并發的線程數量很多,并且每個線程都是執行一個時間很短的任務就結束了,這樣頻繁創建線程就會大大降低系統的效率,因為頻繁創建線程和銷毀線程需要時間。
    所以我們在在Java中可以通過線程池來避免這些問題:
    線程池:其實就是一個容納多個線程的容器,其中的線程可以反復使用,省去了頻繁創建線程對象的操作,無需反復創建線程而消耗過多資源。
    合理利用線程池能夠帶來三個好處

    降低資源消耗。減少了創建和銷毀線程的次數,每個工作線程都可以被重復利用,可執行多個任務。
    提高響應速度。當任務到達時,任務可以不需要的等到線程創建就能立即執行。
    提高線程的可管理性。可以根據系統的承受能力,調整線程池中工作線線程的數目,防止因為消耗過多的內存,而把服務器累趴下(每個線程需要大約1MB內存,線程開的越多,消耗的內存也就越大,最后死機)。
    9. 你對Java內存分配了解多少?簡單談談:
    Java虛擬機管理的內存包括幾個運行時數據內存:方法區、虛擬機棧、本地方法棧、堆、程序計數器,其中方法區和堆是由線程共享的數據區,其他幾個是線程隔離的數據區

  • 程序計數器
    程序計數器是一塊較小的內存,他可以看做是當前線程所執行的行號指示器。字節碼解釋器工作的時候就是通過改變這個計數器的值來選取下一條需要執行的字節碼的指令,分支、循環、跳轉、異常處理、線程恢復等基礎功能都需要依賴這個計數器來完成。如果線程正在執行的是一個Java方法,這個計數器記錄的是正在執行的虛擬機字節碼指令的地址;如果正在執行的是Native方法,這個計數器則為空。此內存區域是唯一一個在Java虛擬機規范中沒有規定任何OutOfMemotyError情況的區域
  • 2 Java虛擬機棧
    虛擬機棧描述的是Java方法執行的內存模型:每個方法在執行的同時都會創建一個棧幀用于儲存局部變量表、操作數棧、動態鏈接、方法出口等信息。每個方法從調用直至完成的過程,就對應著一個棧幀在虛擬機棧中入棧到出棧的過程。
    棧內存就是虛擬機棧,或者說是虛擬機棧中局部變量表的部分
    局部變量表存放了編譯期可知的各種基本數據類型(boolean、byte、char、short、int、float、long、double)、對象引用(refrence)類型和returnAddress類型(指向了一條字節碼指令的地址)
    其中64位長度的long和double類型的數據會占用兩個局部變量空間,其余的數據類型只占用1個。
    Java虛擬機規范對這個區域規定了兩種異常狀況:如果線程請求的棧深度大于虛擬機所允許的深度,將拋出StackOverflowError異常。如果虛擬機擴展時無法申請到足夠的內存,就會拋出OutOfMemoryError異常

    3 本地方法棧
    本地方法棧和虛擬機棧發揮的作用是非常類似的,他們的區別是虛擬機棧為虛擬機執行Java方法(也就是字節碼)服務,而本地方法棧則為虛擬機使用到的Native方法服務
    本地方法棧區域也會拋出StackOverflowError和OutOfMemoryErroy異常

    4 Java堆
    堆是Java虛擬機所管理的內存中最大的一塊。Java堆是被所有線程共享的一塊內存區域,在虛擬機啟動的時候創建,此內存區域的唯一目的是存放對象實例,幾乎所有的對象實例都在這里分配內存。所有的對象實例和數組都在堆上分配
    Java堆是垃圾收集器管理的主要區域。Java堆細分為新生代和老年代
    不管怎樣,劃分的目的都是為了更好的回收內存,或者更快地分配內存
    Java堆可以處于物理上不連續的內存空間中,只要邏輯上是連續的即可。如果在堆中沒有完成實例分配,并且堆也無法再擴展時將會拋出OutOfMemoryError異常

    5 方法區
    方法區它用于儲存已被虛擬機加載的類信息、常量、靜態變量、即時編譯器編譯后的代碼等數據
    除了Java堆一樣不需要連續的內存和可以選擇固定大小或者可擴展外,還可以選擇不實現垃圾收集。這個區域的內存回收目標主要是針對常量池的回收和對類型的卸載
    當方法區無法滿足內存分配需求時,將拋出OutOfMemoryErroy異常
    1.6 運行時常量池
    它是方法區的一部分。Class文件中除了有關的版本、字段、方法、接口等描述信息外、還有一項信息是常量池,用于存放編譯期生成的各種字面量和符號引用,這部分內容將在類加載后進入方法區的運行時常量池中存放
    Java語言并不要求常量一定只有編譯期才能產生,也就是可能將新的常量放入池中,這種特性被開發人員利用得比較多的便是String類的intern()方法
    當常量池無法再申請到內存時會拋出OutOfMemoryError異常

  • 談談你對static的了解
    static是Java中的一個關鍵字,可以用來修飾方法、變量、代碼塊、內部類,還可以使用靜態導包
  • 1.static方法
    static方法一般稱作靜態方法,由于靜態方法不依賴于任何對象就可以進行訪問,因此對于靜態方法來說,是沒有this的,因為它不依附于任何對象,既然都沒有對象,就談不上this了。并且由于這個特性,在靜態方法中不能訪問類的非靜態成員變量和非靜態成員方法,因為非靜態成員方法/變量都是必須依賴具體的對象才能夠被調用。

    注意:雖然在靜態方法中不能訪問非靜態成員方法和非靜態成員變量,但是在非靜態成員方法中是可以訪問靜態成員方法/變量的。

    2.static變量
    static變量也稱作靜態變量,靜態變量和非靜態變量的區別是:靜態變量被所有的對象所共享,在內存中只有一個副本【存放在方法區】,它當且僅當在類初次加載時會被初始化【加final和不加final的static變量初始化的位置不一樣】。而非靜態變量是對象所擁有的,在創建對象的時候被初始化,存在多個副本,各個對象擁有的副本互不影響。

    static成員變量的初始化順序按照定義的順序進行初始化。

    3.static代碼塊
    static關鍵字還有一個比較關鍵的作用就是用來形成靜態代碼塊以優化程序性能,因為靜態資源只會加載一次。static塊可以置于類中的任何地方,類中可以有多個static塊。在類初次被加載的時候,會按照static塊的順序來執行每個static塊,并且只會執行一次。
    初始化的順序 靜態代碼塊 > 構造代碼塊 > 構造函數

    為什么說static塊可以用來優化程序性能,是因為它的特性:只會在類加載的時候執行一次。
    下面看個例子:

    class Person{
    private Date birthDate;

    public Person(Date birthDate) {this.birthDate = birthDate; }boolean isBornBoomer() {Date startDate = Date.valueOf("1946");Date endDate = Date.valueOf("1964");return birthDate.compareTo(startDate)>=0 && birthDate.compareTo(endDate) < 0; }

    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    isBornBoomer是用來這個人是否是1946-1964年出生的,而每次isBornBoomer被調用的時候,都會生成startDate和birthDate兩個對象,造成了空間浪費,如果改成這樣效率會更好,其實就是利用了靜態代碼塊在內存中值加載一次的機制:

    class Person{
    private Date birthDate;
    private static Date startDate,endDate;
    static{
    startDate = Date.valueOf(“1946”);
    endDate = Date.valueOf(“1964”);
    }

    public Person(Date birthDate) {this.birthDate = birthDate; }boolean isBornBoomer() {return birthDate.compareTo(startDate)>=0 && birthDate.compareTo(endDate) < 0; }

    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    因此,很多時候會將一些只需要進行一次的初始化操作都放在static代碼塊中進行。

    4.靜態內部類
    在談論靜態內部之前,我們來談談,為何要用內部類?
    定義在一個類內部的類叫內部類,包含內部類的類稱為外部類。內部類可以聲明public、protected、private等訪問限制,可以聲明為abstract的供其他內部類或外部類繼承與擴展,或者聲明為static、final的,也可以實現特定的接口。內部類有以下特點:
    1.內部類一般只為其外部類使用【比如:hashmap集合中,內部類Entry<K,V>】
    2.內部類提供了某種進入外部類的窗戶,內部類存在外部類的引用,所以內部類可以直接訪問外部類的屬性
    3.每個內部類都能獨立地繼承一個接口,而無論外部類是否已經繼承了某個接口。因此,內部類使多重繼承的解決方案變得更加完整。

    靜態內部類
    定義靜態內部類:在定義內部類的時候,可以在其前面加上一個權限修飾符static。此時這個內部類就變為了靜態內部類。通常稱為嵌套類,當內部類是static時,意味著:

    要創建嵌套類的對象,并不需要其外圍類的對象;
    不能從嵌套類的對象中訪問非靜態的外圍類對象(不能夠從靜態內部類的對象中訪問外部類的非靜態成員);
    嵌套類與普通的內部類還有一個區別:普通內部類的字段與方法,只能放在類的外部層次上,所以普通的內部類不能有static數據和static字段, 也不能包含嵌套類。但是在嵌套類里可以包含所有這些東西。也就是說,在非靜態內部類中不可以聲明靜態成員,只有將某個內部類修飾為靜態類,然后才能夠在這 個類中定義靜態的成員變量與成員方法。

    另外,在創建靜態內部類時不需要將靜態內部類的實例綁定在外部類的實例上。普通非靜態內部類的 對象是依附在外部類對象之中的,要在一個外部類中定義一個靜態的內部類,不需要利用關鍵字new來創建內部類的實例。靜態類和方法只屬于類本身,并不屬于 該類的對象,更不屬于其他外部類的對象。

    補充:內部類標識符
    每個類會產生一個.class文件,文件名即為類名。同樣,內部類也會產生這么一個.class文件,但是它的名稱卻不是內部類的類名,而是有著嚴格的限制:外圍類的名字,加上$,再加上內部類名字。

    5.靜態導包
    靜態導包就是java包的靜態導入,用import static代替import靜態導入包是JDK1.5中的新特性。

    一般我們導入一個類都用 import com……ClassName;
    而靜態導入是這樣:import static com……ClassName.* ;
    這里的多了個static,還有就是類名ClassName后面多了個.* ,意思是導入這個類里的靜態方法。
    當然,也可以只導入某個靜態方法,只要把 .* 換成靜態方法名就行了。
    然后在這個類中,就可以直接用方法名調用靜態方法,而不必用ClassName.方法名的方式來調用。

    好處:這種方法的好處就是可以簡化一些操作,例如打印操作System.out.println(…);
    就可以將其寫入一個靜態方法print(…),在使用時直接print(…)就可以了。
    但是這種方法建議在有很多重復調用的時候使用,如果僅有一到兩次調用,不如直接寫來的方便

    在靜態導入之前:

    public class TestStatic {
    public static void main(String[] args) {
    System.out.println(Integer.MAX_VALUE);
    System.out.println(Integer.toHexString(42));
    }
    }
    1
    2
    3
    4
    5
    6
    在靜態導入之后:

    import static java.lang.System.out;
    import static java.lang.Integer.*;
    public class TestStaticImport {
    public static void main(String[] args) {
    out.println(MAX_VALUE);
    out.println(toHexString(42));
    }
    }
    1
    2
    3
    4
    5
    6
    7
    8
    讓我們看一下使用靜態導入特性的代碼中將發生什么:

    雖然該特性通常稱為“靜態導入”,但語法必須是import static,后面跟你想導入的static成員的完全限定名稱,或者通配符。在本例中,我們在System類的out對象上進行靜態導入。
    在本例中,我們可能想使用java.lang.Integer類的幾個static成員。該靜態導入語句使用通配符來表達“我想在此類中的所有靜態成員上進行靜態導入”。
    現在我們終于看到靜態導入特性的好處!我們不必在System.out.println中鍵入System。太好了!另外,我們不必在Integer.MAX_VALUE中鍵入Integer。因此,在這行代碼中,我們能夠將快捷方式用于靜態方法和一個常量。
    最后,我們進行更多的快捷操作,這次針對Integer類的方法。
    下面是使用靜態導入的幾條原則:

    你必須說import static, 不能說static import。

    提防含糊不清的命名static成員。例如,如果你對Integer類和Long類執行了靜態導入,引用MAX_VALUE將導致一個編譯器錯誤,因為Integer和Long都有一個MAX_VALUE常量,并且Java不會知道你在引用哪個MAX_VALUE。

    你可以在static對象引用、常量(記住,它們是static 或final)和static方法上進行靜態導入。

    11.什么是方法?談談你對方法的理解
    1.概念
    方法其實是具有一定功能的代碼塊,我們可以把需要多次使用的功能提取成一個方法,這樣多次使用的時候也不需要把這些重復的代碼寫多次造成代碼的冗余。

    2.格式
    方法定義的格式:修飾符 返回值類型 方法名(參數列表){方法體}
    方法簽名:方法名(參數列表)

    3.注意事項
    注意:我們這里說的是返回值類型而不是返回值,如果一個方法有返回值,那么返回值類型必須設置為與返回值相同的類型,并且返回值需要使用return關鍵字來返回。

    4.方法的重載:
    在同一個類中出現方法名相同但參數列表不同方法的現象

    注意:方法之間能否構成重載,取決于方法的參數個數與類型,與方法的參數名無關
    我們可以通過方法名+參數列表的方式確定要調用的是哪個方法
    方法的傳值:基本類型傳遞的是實際值,引用類型傳遞的是地址

    而且方法的參數屬于形參,只是格式上需要定義,但是調用方法時起不到限制的作用
    形參:定義方法的時候的參數列表
    實參:使用方法的時候傳入的數據

    重載的意義:
    是為了方便外界對方法進行調用,什么樣的參數程序都可以找到對應的方法來執行,體現的是程序的靈活性

    5.方法的重寫:
    子類繼承父類以后,如果子類對父類的功能不滿意,可以重寫父類的方法

    但是重寫的時候需要注意如下的規則:兩同兩小一大
    一大:子類方法的修飾符范圍 >= 父類方法的修飾符范圍–指的是訪問控制符
    兩同:方法名相同,參數列表相同
    兩小: 子類方法的返回值類型 <= 父類方法的返回值類型【這個大小是繼承關系,不是值的大小】
    子類方法拋出的異常類型 <= 父類方法拋出的異常類型【這個還沒學,不用管】
    注意:如果父類方法的返回值類型是void,子類保持一致即可
    注意:子類不可以重寫父類的私有方法,還是因為不可見

    重寫的意義:是在不修改源碼的前提下,進行功能的修改和拓展
    (OCP原則:面向修改關閉,面向拓展開放)

    6.方法的遞歸:
    遞歸:在方法中調用自己本身
    注意遞歸次數過多時,會出現棧溢出異常
    == 練習題 : 求數字階乘(遞歸解法版)==

    需求:接收用戶輸入的數字,計算該數字的階乘結果
    已知:負數不可以有階乘,0的階乘結果是1,
    5 ! = 5 x 4 x 3 x 2 x 1

    package cn.cxy.design;
    //需求:求用戶輸入數字的階乘結果
    //f(int n)–用來求階乘
    //規律:
    //f(n)= nf(n-1)
    //f(5)= 54321 = 5f(4)
    //f(4)= 4321 = 4f(3)
    //f(3)= 321 = 3f(2)
    //f(2)= 21 = 2f(1)
    //f(1)= 1
    //
    //5!=54321=120
    //4!=4321
    //3!=321
    //2!=2*1
    //1!=1

    public class TestRecursion {
    public static void main(String[] args) {
    int result = f(15);//調用f()用來求階乘
    System.out.println(result);
    }
    /*遞歸的兩要素 1.總結規律 2.最簡問題/
    public static int f(int n) {
    if(n == 1) {//最簡問題
    return 1;
    }else {//其他情況 nf(n-1)
    //遞歸:再方法內部自己調用自己
    return nf(n-1);
    }
    }
    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36

    == 練習題 : 遞歸求目錄總大小==
    需求:遞歸求目錄的總大小 D:\ready,步驟分析如下:
    1.列出文件夾中的所有資源–listFiles()–>File[]
    2.判斷,當前資源是文件還是文件夾–文件夾大小為0,文件大小需要累加
    –是文件,求文件的字節量大小length(),累加就行
    –是文件夾,繼續列出文件夾下的所有資源–listFiles()–>File[]
    –判斷,是文件,求文件的字節量大小length(),累加就行
    –判斷,是文件夾,再一次列出文件夾下的所有資源
    –…重復操作
    也就是說,規律就是:只要是文件夾,就需要重復步驟1 2

    package cn.cxy.file;

    import java.io.File;

    /*本類用來遞歸求目錄總大小/
    public class FileSumRecursion {
    public static void main(String[] args) {
    //1.指定要求哪個目錄的總大小
    /*注意:此處指定的目錄必須是真實存在的
    * 如果傳一個不存在的文件夾會報錯,如果是傳了一個空文件夾,大小為0/
    File file = new File(“D:\ready”);
    //2.調用size()求目錄大小
    long total = size(file);
    //3.接收結果并打印
    System.out.println(“文件夾的總大小為:”+total);
    }

    private static long size(File file) {//1.列出文件夾中的所有資源--listFiles()-->File[]File[] fs = file.listFiles();//2.遍歷數組,獲取每file對象//2.1定義變量,記錄總和long sum = 0;for(int i = 0;i < fs.length ; i++) {//2.2通過下標操作當前遍歷到的資源File f = fs[i];//2.3判斷,當前資源是文件還是文件夾--文件夾大小為0,文件大小需要累加if(f.isFile()) {//--是文件,求文件的字節量大小length(),累加就行sum += f.length();//相當于:sum = sum + f.length();}else if(f.isDirectory()) {//--是文件夾,繼續列出文件夾下的所有資源,1 2步驟--listFiles()-->File[]/**方法的遞歸,遞歸現象,就是在方法的內部調用方法自身*/sum += size(f);}}return sum;//把sum記錄的值返回調用位置 }

    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    練習題 : 遞歸刪除文件夾
    需求:遞歸刪除文件夾 D:\ready\a
    1.列出文件夾下的所有資源listFiles()
    2.判斷,當前資源是文件還是文件夾
    –判斷,是文件,直接刪除delete()
    –判斷,是文件夾,繼續重復操作1 2
    具體思路可以分為這么幾步:
    1.首先,我們需要指定一個根目錄作為要刪除的對象
    2.列出文件夾下的所有資源listFiles(),并進行遍歷
    3.判斷當前的資源,如果是文件,直接刪除;如果是文件夾,則執行步驟2
    4.將文件夾中的內容刪除完畢后,刪除文件夾本身

    package cn.tedu.file;

    import java.io.File;

    /*本類用于遞歸刪除目錄/
    public class TestFileDeleteRecursion {
    public static void main(String[] args) {
    //1.指定要刪除的目錄
    /**為了更好的測試,注意指定的目錄是已存在的目錄,但是,千萬不要刪盤符!!!*/
    /我們也有一些沒有權限的文件夾,那個是無法訪問且不能刪除的哦/
    File file = new File(“D:\ready\a”);
    //2.調用刪除目錄的方法
    boolean result = del(file);
    //3.打印刪除的結果
    System.out.println(“刪除的結果為:”+result);
    }

    public static boolean del(File file) {//完成的同學不是很多,抓緊時間寫,寫完截圖發群里哈,這首歌結束我們繼續//1.列出文件夾下的所有資源File[] fs = file.listFiles();//2.循環遍歷拿到的所有資源for (int i = 0; i < fs.length; i++) {//2.1獲取本次循環遍歷到的file對象File f = fs[i];//3.判斷,當前資源是文件還是文件夾if(f.isFile()) {f.delete();//是文件,直接刪除System.out.println(file.getName()+"文件刪除成功!");}else if(f.isDirectory()) {//是文件夾,需要繼續進行步驟1 2 ,出現了重復調用的情況//遞歸,在方法的內部調用自己del(f);}}//位置:在for循環執行之外刪除文件夾file.delete();//空文件夾直接刪除System.out.println(file.getName()+"文件夾刪除成功!");return true; }

    }

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    12.內部類有哪些種類?又有哪些使用場景?
    定義在一個類中或者方法中的類稱為內部類。

    內部類可以分為以下四類:

    成員內部類【這里是非靜態的】
    這是最普通的內部類,它定義在一個類的內部中,就如同一個類里的成員變量一樣。
    成員內部類可以無條件的訪問外部類的成員屬性和成員方法(包括 private 和 static 類型的成員)
    這是因為在成員內部類中,隱式地持有了外部類的引用。
    使用場景:當類 A 需要使用類 B ,同時 B 需要訪問 A 的成員/方法時,可以將 B 作為 A 的成員內部類。同時我們可以利用 private 內部類禁止其他類訪問該內部類,從而做到將具體的實現細節完全隱藏。

    靜態內部類【這里是成員內部類被靜態修飾】
    這是使用 static 關鍵字修飾的內部類,靜態內部類不持有外部類的引用,可以看作是和外部類平級的類。
    我們想在靜態內部類中訪問外部類的成員只能 new 一個外部類的對象,否則只能訪問外部類的靜態屬性和靜態方法。
    使用場景:當類 A 需要使用類 B,而 B 不需要直接訪問外部類 A 的成員變量和方法時,可以將 B 作為 A 的靜態內部類。

    局部內部類
    這是在代碼塊或者方法中創建的類。
    局部內部類的作用域只能在其所在的代碼塊或者方法內,在其它地方無法創建該類的對象。
    我們可以把局部內部類理解為作用域很小的成員內部類。
    使用場景:局部內部類只用于當前方法或者代碼塊中創建、使用,屬于一次性產品,使用場景比較少。

    匿名內部類
    這是一個沒有名字的內部類,通常與匿名對象一起使用,實現了創建實現類+實現方法+創建對象并調用方法的功能
    概括一下匿名內部類的特點:
    1.必須繼承一個父類或實現一個接口,并不需要增加額外的方法,只是對繼承方法的實現或是覆蓋。
    2.只是為了獲得一個對象實例,并不需要知道其實際的類型。
    3.匿名內部類的匿名指的是沒有類名,而不是沒有引用指向它。
    4.匿名內部類不能有構造方法,只能有初始化代碼塊。因為編譯器會幫我們生成一個構造方法然后調用。
    5.匿名內部類中使用到的參數是需要聲明為 final 的,否則編譯器會報錯。
    使用場景: 當我們需要實現一個接口,但不需要持有它的引用,僅需要使用一次它的某一個資源時使用

    那么為什么匿名內部類中使用參數需要聲明為final呢?
    因為匿名內部類是創建一個對象并返回,這個對象的方法被調用的時機不確定,方法中有修改參數的可能,如果在匿名內部類中修改了參數,外部類中的參數是否需要同步修改呢?Java 為了避免這種問題,限制匿名內部類訪問的變量需要使用 final 修飾,這樣可以保證訪問的變量不可變。
    而且,除了靜態內部類,剩下的成員內部類、局部內部類、匿名內部類 都會默認隱式地持有外部類的引用。

    13.談談串行、并行、并發、分布式?
    比如現在有2個任務:A任務與B任務
    那我們通過圖片來演示一下串行、并行與并發,大家可以結合圖片來理解:

    串行
    首先,A和B兩個任務運行在單核【1個CPU】線程上
    其次,A和B兩個任務只能一次執行一個,在上一個任務執行完之前不會執行下一個任務。一次調用一個。

    并行
    首先,A和B兩個任務在同一時刻發生在多核【多個CPU】線程上
    所以通常是指兩個或兩個以上的任務在同一時刻可在不同CPU上同時執行,效率較高
    但注意,這個會受限于CPU線程數,如果任務數量超過了CPU線程數,那么每個線程上的任務仍然是順序執行的。

    并發
    是指多個線程在宏觀時間上看似同時執行,但實際上是輪流穿插執行的效果。
    并發實際上是一個CPU在若干程序間的多路復用,主要是為了提高有限物理資源的運行效率。
    并發與并行串行并不矛盾,如果是單核啟用并發,那就是串行并發,如果在多核【多個線程】上啟用并發,那就是并行并發。

    分布式
    分布式在并行處理的基礎上,強調任務正在執行的物理設備,如處理器、內存等等硬件,在物理上是分開的。
    而并行計算是指在一臺計算機上的計算,在物理上不分開。

    總結

    以上是生活随笔為你收集整理的基础面试题的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    国产福利不卡视频 | 一区二区三区精品在线 | 国产精品久久久久久久av电影 | 国产综合在线视频 | 美女黄频在线观看 | 天天射综合网站 | 四月婷婷在线观看 | 高清免费av在线 | 国产成人一区二区三区在线观看 | 国内免费的中文字幕 | 国产精品一区免费在线观看 | 亚洲欧洲av| 在线观看mv的中文字幕网站 | 国产精品久久中文字幕 | 日韩r级电影在线观看 | 91免费高清观看 | www.xxxx变态.com | 天天草综合网 | 国产片网站| 久久国产日韩 | 中文欧美字幕免费 | 日韩手机在线观看 | 亚洲va欧美va人人爽 | 免费在线观看日韩视频 | 三级av免费观看 | 中文字幕乱码日本亚洲一区二区 | 免费精品 | 久久一级片| 久久久网址 | 91原创在线观看 | 久久久国产精品人人片99精片欧美一 | 91亚洲在线观看 | av在线在线 | 亚洲精选视频免费看 | 欧美成人在线免费观看 | 国产精品 中文字幕 亚洲 欧美 | 爱爱av网站 | 三级免费黄 | 日韩欧美在线高清 | 丁香午夜婷婷 | 91精品国产乱码久久桃 | 久久久久久精 | 日韩av免费在线看 | 国产精品成人品 | 国产99久久久国产精品免费二区 | 在线免费观看黄 | av国产网站 | 99久久精品免费看国产麻豆 | 欧美激情一区不卡 | 国产精品毛片一区视频播 | 99热在线观看| 国产精品色视频 | 丁香六月在线观看 | 六月丁香六月婷婷 | 狠狠躁18三区二区一区ai明星 | 日日夜夜精品视频天天综合网 | 天天操天天能 | av丝袜制服| 在线免费观看视频一区二区三区 | 在线久热| 91久久黄色 | 亚洲国产精品女人久久久 | 欧美精品在线免费 | 波多野结衣理论片 | 中文在线中文资源 | 色九色| 国产一线二线三线在线观看 | 国产精品久久久久久久av大片 | 天天操天天弄 | 久久99精品久久久久久久久久久久 | 黄色国产区 | 久久国产女人 | 热久久电影 | 国产精品久久久久久久久久东京 | 国产精品久久久久毛片大屁完整版 | 国产一区欧美在线 | 久久精品网站免费观看 | 91亚洲精品久久久蜜桃借种 | 中文字幕视频三区 | 久久久免费 | 91精品影视 | 午夜精品一区二区三区四区 | 日本丰满少妇免费一区 | 国产精品男女视频 | 国产亚洲精品bv在线观看 | 久久久久久久免费 | 二区视频在线观看 | 国产视频在线观看一区 | 久久精品一区二区三区中文字幕 | 亚洲精品久久久蜜桃直播 | 中文资源在线播放 | 亚洲色图22p| 天堂v中文| 久久韩国免费视频 | av大全在线观看 | 久久精品视频国产 | 久久久久成人免费 | 国产不卡一区二区视频 | 婷婷丁香色 | 亚洲精品在线免费 | 五月天九九 | 久久草网站| 色在线视频| 国产99免费视频 | 91黄色影视| 欧美动漫一区二区三区 | 婷婷丁香花五月天 | 久久久精品一区二区三区 | 国产精品国产毛片 | 精品国偷自产在线 | 亚洲国产精品成人av | 日韩精品在线看 | 亚洲激情 欧美激情 | 色国产在线| 国产精品v欧美精品v日韩 | 久一网站 | 亚洲精品午夜久久久久久久久久久 | 久章草在线 | 国产又粗又硬又爽视频 | 在线观看av不卡 | 亚洲婷婷在线 | 成人免费在线观看av | 黄色资源在线观看 | 亚洲国产免费网站 | 成人av影视在线 | 欧美日韩视频免费看 | 欧美另类交人妖 | 91中文字幕在线观看 | 婷婷av网站 | 久久久精品久久 | 韩国av一区二区三区在线观看 | 国产精华国产精品 | 久久精品导航 | 久久综合射 | 国产高清黄 | 欧美一级高清片 | 色资源在线观看 | 中文字幕网站视频在线 | 午夜视频在线观看一区二区三区 | 欧美一区二区三区免费观看 | 亚洲资源视频 | 激情在线免费视频 | 91pony九色丨交换 | www国产亚洲精品久久网站 | 区一区二区三区中文字幕 | 成人免费在线看片 | 免费av在线网 | 日本爱爱免费 | .国产精品成人自产拍在线观看6 | 天天看天天操 | 精品国产一区二区三区在线观看 | 亚洲成人精品国产 | 欧美日韩另类在线观看 | 国产丝袜在线 | 黄污污网站 | 免费观看国产成人 | 在线观看中文字幕一区 | 99中文字幕在线观看 | 国内视频在线 | 日韩电影在线观看中文字幕 | 亚洲成人精品av | 国产美女免费观看 | 一区二区免费不卡在线 | 国产精品少妇 | 中文字幕乱视频 | 97超视频在线观看 | 天天激情综合 | 色激情五月 | 国产精品久久久久久久婷婷 | 九九九热精品免费视频观看 | 欧美激情精品久久 | 国产成人av在线影院 | 精品视频在线免费观看 | 日韩在线视频线视频免费网站 | 久久国产精品久久精品国产演员表 | 97精品视频在线 | 欧美精品久久久久久久 | 国产高清视频免费观看 | 天天干夜夜操视频 | 在线国产视频观看 | 亚洲精品乱码久久久久久9色 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 天天色天天骑天天射 | 丝袜美腿亚洲综合 | 久久成人精品电影 | 九九九视频在线 | 激情av五月婷婷 | 开心激情五月婷婷 | 国产精品一区二区免费看 | 国产一区二区不卡视频 | 在线观看你懂的网址 | 99久久久国产精品 | 久久99国产精品自在自在app | 中文字幕xxxx | 九9热这里真品2 | 在线免费视频 你懂得 | 亚洲国产欧洲综合997久久, | 人人爽人人爽人人爽 | 一级黄色毛片 | 97精品超碰一区二区三区 | 成年人黄色大片在线 | 97色婷婷| 日韩视频免费观看高清完整版在线 | 国产韩国精品一区二区三区 | 日韩一区二区三区免费电影 | 欧美一级乱黄 | 特级西西www44高清大胆图片 | 国产精品国产三级国产aⅴ9色 | 久久久在线观看 | 日韩精品一区二区三区电影 | 99久久精品国产网站 | 日韩在线一二三区 | 在线视频电影 | 中文字幕人成不卡一区 | 国产91国语对白在线 | 欧美另类人妖 | 黄色精品久久 | 91av在线视频免费观看 | 黄色视屏在线免费观看 | 精品国产一区二区三区不卡 | 国产精品久久久久久久久久 | 91精品国产麻豆 | 色婷婷亚洲精品 | 精品一区二区三区四区在线 | 国产成人黄色在线 | 久草在线资源免费 | 日韩字幕在线观看 | 国产午夜影院 | 尤物九九久久国产精品的分类 | 欧美亚洲成人免费 | 久久免费视频2 | 午夜电影久久久 | 久久精品视频国产 | 国产高清第一页 | 成人一级在线观看 | 一 级 黄 色 片免费看的 | 中文字幕亚洲精品日韩 | 免费视频xnxx com | 97国产在线观看 | 青草视频免费观看 | 成人国产精品一区 | 一二区精品 | 国产区在线看 | 国产精品乱码久久久久久1区2区 | 久久无码av一区二区三区电影网 | 看毛片的网址 | 日韩午夜电影 | 少妇bbbb揉bbbb日本 | 免费观看丰满少妇做爰 | 一区二区三区高清在线观看 | 日日干干夜夜 | 国产小视频在线免费观看视频 | 天天操天天操一操 | 久久久久久久久久久久久久免费看 | 91网页版在线观看 | 天天操比| 五月婷婷av| 久久高清av | 久久不色 | 国产精品久久亚洲 | 99高清视频有精品视频 | 99在线精品免费视频九九视 | 国产免费专区 | 免费在线观看av网站 | 久久久高清免费视频 | av色一区| 国产精品不卡视频 | 超碰99人人 | 伊人网综合在线观看 | 一区二区三区手机在线观看 | 91在线中字 | 一级黄色片在线 | 91精品视频一区 | 九九久久久久久久久激情 | 婷婷色 亚洲| 亚洲乱亚洲乱亚洲 | 中文字幕第一 | 日日躁夜夜躁xxxxaaaa | 久久久久这里只有精品 | 婷婷新五月| 欧洲成人av | 久久精品爱视频 | 亚洲资源在线观看 | 91久久丝袜国产露脸动漫 | 黄色av大片 | 丁香婷婷激情 | 久久精品视频免费播放 | 成片免费观看视频999 | 天天做天天爱天天综合网 | 在线国产小视频 | 91热这里只有精品 | 久久tv | 国产精品美女久久久免费 | 国产麻豆视频免费观看 | 成人免费在线电影 | 国内精品久久久 | 欧美网站黄色 | 黄色美女免费网站 | 国产中文字幕久久 | 国产裸体bbb视频 | 日韩精品久久久久久久电影竹菊 | 欧美日韩高清一区二区 | 久草视频视频在线播放 | 亚洲四虎在线 | 国产手机视频在线观看 | 五月综合色 | 97色婷婷成人综合在线观看 | 欧美性黄网官网 | 激情伊人 | 久久精品老司机 | 日韩在线精品一区 | 在线播放一区二区三区 | 3d黄动漫免费看 | 天天爽天天爽夜夜爽 | 久久麻豆精品 | 日本免费久久高清视频 | 精品亚洲视频在线 | 国产精品久久久久久电影 | 91色偷偷| 51精品国自产在线 | 丁香电影小说免费视频观看 | 国产男女无遮挡猛进猛出在线观看 | 九九九国产 | se视频网址 | 精品国产一区二区三区久久久久久 | 91mv.cool在线观看| 欧美一级免费片 | 国产视频资源在线观看 | 手机av在线网站 | 免费婷婷 | 国产一级黄 | 成片免费 | 69久久久久久久 | 久久天堂亚洲 | 97人人视频 | 久久久精品国产免费观看一区二区 | 成年人免费看片网站 | 韩国三级在线一区 | 久久夜视频| 一级电影免费在线观看 | 中文字幕在线一区二区三区 | 456成人精品影院 | 日韩久久午夜一级啪啪 | 免费观看av | 久久99精品久久久久久久久久久久 | 亚洲综合视频在线观看 | 四虎国产精品成人免费影视 | 免费av大全 | 综合激情 | 日本在线视频一区二区三区 | 少妇搡bbbb搡bbb搡忠贞 | 国产在线精品一区二区不卡了 | 中文字幕亚洲欧美日韩 | 日本视频精品 | 又污又黄的网站 | 日日操天天操狠狠操 | 久久无码av一区二区三区电影网 | 久久在视频 | 国产精品久久久久久欧美 | 九色精品在线 | 五月婷婷在线观看视频 | 国产一区视频免费在线观看 | 五月激情天 | 日韩精品免费专区 | 日韩高清二区 | 成人性生交视频 | 日韩伦理一区二区三区av在线 | 夜夜高潮夜夜爽国产伦精品 | 手机av在线不卡 | 视频一区二区精品 | 久久人人爽人人爽 | 国产成人久久精品一区二区三区 | 成人网色 | 99色免费 | 日本精品一区二区在线观看 | 97精品在线视频 | 亚洲视频axxx | 婷婷综合网 | 91成人精品一区在线播放69 | 久久亚洲精品国产亚洲老地址 | 久久精品国亚洲 | 99久久久国产精品免费99 | 日韩久久电影 | 91丨九色丨高潮丰满 | 免费av在线播放 | 日韩视频中文字幕在线观看 | 日韩videos | 日韩草比 | 国产专区在线视频 | 久久久国产精品电影 | 349k.cc看片app | 在线精品一区二区 | 在线视频 你懂得 | 亚洲成av人电影 | 区一区二在线 | 成人av.com| 91视频免费看片 | 午夜精品麻豆 | 在线观看 国产 | 国产永久免费高清在线观看视频 | 天天插日日操 | 亚洲人成人在线 | 免费久久网站 | 久久久久久激情 | 国产在线视频一区二区三区 | 五月开心六月婷婷 | 91精品国产综合久久福利 | 亚洲天天草 | 欧美不卡在线 | 麻豆传媒视频观看 | 久久久久99精品成人片三人毛片 | 91在线日韩 | 婷婷伊人综合亚洲综合网 | 三级黄色免费片 | 婷婷去俺也去六月色 | 中文字幕国产精品 | 中文字幕在线观看三区 | 欧美激情一区不卡 | 在线午夜电影神马影院 | 99在线免费观看视频 | 成人av午夜 | www黄色大片 | 亚洲一级影院 | 色五丁香| 色综久久 | .国产精品成人自产拍在线观看6 | 正在播放亚洲精品 | 99热精品久久 | 超碰99人人 | 成人黄色在线电影 | 色哟哟国产精品 | 91精品免费在线 | 国产精品一区二区62 | 精品久久久久久国产 | 成人性生交视频 | 500部大龄熟乱视频使用方法 | 一级片视频免费观看 | 天天躁天天操 | 国产 成人 久久 | 国产精品一区二区在线观看免费 | 91久久国产综合精品女同国语 | 亚洲日b视频 | 久久在线视频在线 | 国产视频中文字幕在线观看 | 一区二区三区国产精品 | 亚洲欧美在线观看视频 | 最近中文字幕视频完整版 | 中文字幕乱码电影 | 日韩欧美高清不卡 | 亚洲精品国产精品国自产观看浪潮 | 色99在线| 91 | 日韩高清观看 | 国产免费黄色 | 国产免费高清视频 | 国产精品国产毛片 | 久久综合精品国产一区二区三区 | 182午夜在线观看 | 四虎成人精品 | 91精品一区二区三区久久久久久 | 视频一区视频二区在线观看 | 国产丝袜一区二区三区 | 99c视频高清免费观看 | 婷婷午夜激情 | www.天天射| 美女国产网站 | 精品国产综合区久久久久久 | 日韩激情小视频 | 国产香蕉久久 | 日韩在线中文字幕视频 | 国产精品日韩久久久久 | a亚洲视频| 韩国av一区二区三区在线观看 | 久久亚洲福利视频 | 97超视频免费观看 | 久久国产精品久久国产精品 | 91网站免费观看 | 欧美激情视频久久 | 国产成人在线一区 | 成片免费 | 久久色视频 | 一级黄毛片| 日韩a在线观看 | av在线电影网站 | 97香蕉久久国产在线观看 | 日韩精品一区二区在线观看 | 99免费在线播放99久久免费 | 骄小bbw搡bbbb揉bbbb | 91精品啪 | 91精品一区二区三区久久久久久 | 九色免费视频 | 中文不卡视频 | 久久久精品国产免费观看同学 | 狠狠干综合网 | 97超碰在线久草超碰在线观看 | 97色狠狠| 天堂视频一区 | 国产黄色免费在线观看 | 最新国产精品久久精品 | 性色xxxxhd| 日日夜夜网 | 日韩av视屏在线观看 | av片中文 | 一级片视频在线 | 808电影| 国产在线观看 | 国产精品一区久久久久 | 国产精品99久久久久久武松影视 | 精品视频在线免费 | 国产又粗又猛又爽又黄的视频先 | 精品福利视频在线观看 | 日韩中文字幕a | 天天综合网天天综合色 | 中文字幕中文字幕中文字幕 | 亚洲高清视频在线播放 | 免费涩涩网站 | 亚洲一区二区天堂 | 四虎在线观看 | 天天色天天干天天 | 中文字幕在线视频免费播放 | 国产不卡视频在线播放 | 人人射人人爽 | 日韩欧美一区二区三区在线观看 | 精品亚洲欧美一区 | 国产无遮挡又黄又爽在线观看 | 欧美色图东方 | 麻豆91精品 | 欧美激情综合五月 | 久草在在线| 欧美动漫一区二区三区 | 成年人在线观看视频免费 | av黄色免费网站 | 天天操一操 | 九九九在线观看视频 | 久久avav | 日韩高清三区 | 天天操比| 国产精品美女毛片真酒店 | 特级西西人体444是什么意思 | 97在线视频免费看 | 欧美日韩免费观看一区二区三区 | 99精品在这里| 香蕉色综合 | 黄色精品网站 | 国产视频精品在线 | 在线视频 精品 | 不卡电影免费在线播放一区 | 国产精品嫩草69影院 | 亚洲精品成人网 | 国产精品福利在线播放 | 欧洲成人免费 | 国产精品亚州 | 亚洲国产欧美一区二区三区丁香婷 | 香蕉网在线播放 | 色婷婷国产 | 色噜噜色噜噜 | 成人高清av在线 | 日韩av线观看 | 日韩午夜在线 | 成人国产精品一区 | 精品久久久久久久久久岛国gif | 国产在线97 | 婷婷夜夜 | 日本 在线 视频 中文 有码 | 免费日韩一区二区三区 | 黄网站免费大全入口 | 亚洲,国产成人av | av片无限看 | 97超碰人人澡 | 国产精彩在线视频 | 中文字幕视频一区二区 | 色婷婷综合久久久中文字幕 | 日韩精品中文字幕在线播放 | 摸bbb搡bbb搡bbbb| 在线三级播放 | 婷五月天激情 | 国产在线一线 | 日韩久久一区二区 | 国产一区二区免费在线观看 | 久久精品毛片基地 | 国产精品18久久久久久久久久久久 | 久草久草视频 | 日本三级吹潮在线 | 色偷偷人人澡久久超碰69 | 韩国视频一区二区三区 | 黄色在线成人 | 成片免费观看视频大全 | 97热在线观看 | 麻豆一区在线观看 | 欧美综合在线视频 | 五月婷婷视频在线 | 日韩一级片大全 | 又黄又爽的免费高潮视频 | 精品久久久久免费极品大片 | 日韩专区一区二区 | 免费高清在线观看成人 | 久久久久久久久久久网 | a黄色片| 黄色官网在线观看 | 色香网 | 激情婷婷丁香 | 久草精品在线播放 | 久久国语| 99成人免费视频 | 四虎国产视频 | 99国产情侣在线播放 | 九九色网| 久久国产经典视频 | 91热爆视频 | 99精品一区二区 | 色综合久久中文字幕综合网 | 中文字幕在线免费播放 | 久青草电影 | 日韩av电影网站在线观看 | 99在线视频观看 | 欧美日韩裸体免费视频 | 日本特黄一级片 | 亚洲婷婷在线视频 | www.天天操.com | 一区二区三区动漫 | 国产精品专区在线 | 久久综合一本 | 国产老妇av | 国产91成人| 亚洲国产日本 | 精品视频免费在线 | 久久久久久亚洲精品 | 天天狠狠操 | 一级a毛片高清视频 | 在线观看91精品视频 | 久久99深爱久久99精品 | 国产成人精品一区二区三区福利 | 亚洲国产精品推荐 | 国产人成在线观看 | 天天射天天射天天射 | 十八岁免进欧美 | 色婷婷欧美 | 免费能看的黄色片 | 欧美国产亚洲精品久久久8v | 成人a大片| 久热色超碰 | 成人国产精品久久久 | 久久人人爽人人片av | 欧美综合在线视频 | 婷婷激情综合网 | 中文字幕高清有码 | 波多野结衣在线视频一区 | 亚洲免费高清视频 | 一区二区三区影院 | 久久观看最新视频 | 天天爽天天爽夜夜爽 | 天天草av | 黄色毛片电影 | 色婷婷视频在线 | 中文字幕精品三区 | 免费激情在线电影 | 国产中文伊人 | 九九视频精品免费 | 天天射天天操天天干 | 在线视频中文字幕一区 | 天天操天天操天天操天天 | 欧美日韩大片在线观看 | 91久久精品一区二区二区 | 国产成人亚洲精品自产在线 | 国产精品国产自产拍高清av | 国产欧美日韩精品一区二区免费 | 欧美久久久 | 男女激情免费网站 | 欧美一二三视频 | 91亚洲国产成人久久精品网站 | 又黄又爽的视频在线观看网站 | 亚洲撸撸 | 免费av的网站 | 69av视频在线观看 | 99综合电影在线视频 | 九九在线国产视频 | 欧美xxxx性xxxxx高清 | 久久综合影音 | 五月综合激情网 | 一区二区三区视频在线 | 日韩r级电影在线观看 | 免费在线观看午夜视频 | 欧美一级电影片 | 国产精品乱码高清在线看 | 婷婷丁香激情综合 | 在线电影91 | 午夜精品久久一牛影视 | 97在线观看| 欧美性极品xxxx做受 | 国产亚洲在线 | 麻豆成人在线观看 | 国产精品不卡视频 | 国产亚洲成av片在线观看 | 99r在线 | 天天干天天干天天干天天干天天干天天干 | 国产精品久久一区二区三区不卡 | 久久99久久久久久 | 国产精品久久麻豆 | 亚洲一区二区天堂 | 国产色视频一区二区三区qq号 | 亚洲国产精品免费 | 亚洲区精品视频 | 久久久久激情视频 | 五月婷婷在线视频观看 | 亚洲毛片视频 | 国产裸体视频bbbbb | av成人黄色 | 特级毛片网 | 日韩精品一区二区三区在线视频 | 正在播放 国产精品 | 久久精品视频免费 | 亚洲一二视频 | 国产精品乱看 | 99热在线国产精品 | 在线激情av电影 | 精品免费观看视频 | 黄污视频网站 | 激情综合六月 | 国产一级淫片免费看 | 五月婷婷综合久久 | 亚洲高清视频一区二区三区 | 国产日本亚洲 | 97在线观看免费观看高清 | 日韩在线免费 | 日韩在线首页 | 波多野结衣电影一区二区 | 最新黄色av网址 | 国产在线自 | 欧美成人黄色片 | 国产一区免费观看 | 91在线视频在线观看 | 精品在线观看一区二区 | 国内揄拍国内精品 | 国产精品第一页在线 | 人人精品 | 99这里只有久久精品视频 | 在线 欧美 日韩 | 天天爽天天射 | 日本婷婷色 | 中文字幕a∨在线乱码免费看 | 国产成人91 | 97超碰网| 免费av观看 | 色姑娘综合 | 久久久久久免费网 | 成年人免费在线播放 | 天堂av在线网站 | 久久tv| 欧美精品网站 | 福利一区二区 | 天天综合狠狠精品 | 国产精品黄色 | 欧美粗又大 | 日韩免费高清在线 | 日韩久久一区 | aaa毛片视频 | 久久爱992xxoo | 国产视频 亚洲视频 | 国产精品 中文字幕 亚洲 欧美 | 一区 二区电影免费在线观看 | 国产一区二区影院 | 婷婷六月天在线 | 日日爱夜夜爱 | 在线看国产 | 亚洲成人第一区 | 国产糖心vlog在线观看 | 在线免费亚洲 | 福利精品在线 | 久久视屏网 | 97人人精品 | 中文字幕在线人 | 国产精品不卡视频 | 午夜美女福利 | 日日干天夜夜 | 国产精品婷婷午夜在线观看 | 国产黄色一级片在线 | 又粗又长又大又爽又黄少妇毛片 | 成人动漫一区二区三区 | www欧美色 | 麻豆免费精品视频 | 欧美视频日韩 | 超碰在线人人艹 | 日韩免费在线观看网站 | 91视频黄色 | 视频1区2区| 亚洲精品一区二区三区在线观看 | 五月婷婷综合色拍 | 中文字幕成人在线观看 | 色综合久久综合网 | 久久a国产 | 国产女人40精品一区毛片视频 | 在线精品播放 | 亚洲精品网址在线观看 | 天天色天天艹 | 黄色avwww| 亚洲不卡123 | 国产成人免费网站 | 国产九九在线 | www.狠狠色.com | 成人av久久 | 日本黄色a级大片 | av电影在线播放 | 国产亚洲欧美一区 | 黄色av免费电影 | 丁香资源影视免费观看 | 91成人区| 成人国产精品免费观看 | 天堂黄色片 | 亚洲成人av免费 | 99国产在线| 日本中文字幕在线一区 | 成人在线观看你懂的 | 91精品国自产在线观看欧美 | 亚洲免费精彩视频 | 国产精品一区二区免费视频 | 丁香婷婷综合激情五月色 | 国产高清99 | 国产一级在线看 | 久久久久久久久久久久久久电影 | 天天干,天天草 | 操操日| 欧美片网站yy | 日韩在线国产精品 | 日日操日日干 | 午夜精品福利在线 | 免费观看版 | 99免费精品视频 | 安徽妇搡bbbb搡bbbb | 婷婷天天色 | www.99av| 久久影视一区二区 | 中文字幕在线看视频国产中文版 | 一区二区伦理 | 国产露脸91国语对白 | 久草免费电影 | 亚洲精品99久久久久久 | 欧美日韩亚洲在线观看 | 国产一区二区在线播放视频 | 五月天国产精品 | 国产手机av在线 | 99精品黄色片免费大全 | 国产免费大片 | 成人亚洲网 | 亚洲视频999| 国产a级片免费观看 | 亚洲国产精品久久久 | 黄污在线看 | 久久午夜网 | 午夜视频播放 | 男女激情免费网站 | 色婷婷播放 | 久久精品这里热有精品 | 久久精品国产亚洲a | 亚洲欧洲精品在线 | av在线免费观看网站 | 久久av不卡| 黄色在线免费观看网址 | 天天射狠狠干 | 在线看成人av | 久久精品免费电影 | 91日本在线播放 | 夜夜骑日日 | 久久久久成人精品免费播放动漫 | 国产精品久久久久久久久久久免费 | 天天操狠狠干 | a v在线视频 | av黄色av| 六月色丁香| 久久久久国产精品免费网站 | 欧美美女激情18p | 国产精品美女久久久久久久久 | 狠狠色丁香婷综合久久 | 国产九九在线 | 天天爽夜夜操 | 一区二区三区免费在线 | 丁香婷婷久久 | av在线直接看 | 四虎影视成人 | 久久久久久不卡 | 午夜精品一区二区三区免费视频 | 日韩免费一级a毛片在线播放一级 | 久久精品欧美一 | 国产码电影 | 久久久久久久久毛片 | 欧美一级性生活 | 99视频免费观看 | 日韩在线小视频 | 亚洲综合狠狠干 | 色综合色综合久久综合频道88 | 超碰在线成人 | 99视频在线观看一区三区 | 日韩精品一区二区三区不卡 | 久久视影| 99热亚洲精品 | 一级成人免费视频 | 国产免费中文字幕 | 狠狠色丁香婷婷综合基地 | 久久久久久久久福利 | 人人看看人人 | 日韩av片免费在线观看 | 国产亚洲人成网站在线观看 | 成人福利av | 欧美日韩观看 | 日韩簧片在线观看 | 亚洲视频2| 亚洲综合在线五月 | www.久热 | 国产综合福利在线 | 在线观看一区视频 | 国产精品久久久久久久久费观看 | 啪啪小视频网站 | 国内99视频 | 色网免费观看 | 国产一卡久久电影永久 | 色婷婷视频在线观看 | 国产一区国产二区在线观看 | 丁香综合av| 国产日韩欧美自拍 | 中文字幕中文中文字幕 | 91亚洲精品久久久 | 国产特级毛片aaaaaa | 国产午夜精品免费一区二区三区视频 | 在线观看免费视频 | 久久69av | 久久中文精品视频 | av动态图片 | 久久免费大片 | 午夜久久久久久久久 | 九九热精品国产 | 欧美成人xxxx | 久久成人高清视频 | 国产精品入口久久 | 日韩天堂网 | 亚洲成人av在线电影 | 91麻豆精品国产自产在线游戏 | 午夜精品久久久久久久99水蜜桃 | 超碰人人草 | 欧美亚洲成人免费 | 日日躁你夜夜躁你av蜜 | 在线视频手机国产 | 精品人人人 | 97在线观看视频免费 | 国产视频91在线 | 在线免费观看黄色大片 | a视频在线观看 | 激情动态 | 国产精品久久久久久久av大片 | 中文字幕九九 | 精品免费视频 | 热久久免费视频 | 99草在线视频 | 六月色婷 | 五月综合激情网 | 日韩欧美电影网 | 国产精品美女www爽爽爽视频 | 五月天久久久 | 日韩一区二区免费在线观看 | 日韩av中文 | www日| 在线观看a视频 | 久草在线电影网 | 亚洲精品字幕在线 | 国产美女精品视频 | 亚洲欧美成人网 | 国产伦精品一区二区三区高清 | 97品白浆高清久久久久久 | 亚州成人av在线 | 久久伊人热 | 91麻豆精品国产自产 | 精品国产视频在线观看 | 国产婷婷色 | 久久免费视频网站 | 韩国在线视频一区 | 久久激情综合网 | 国产成人l区| 福利视频午夜 | 色综合久久久久久久 | 99色人| 黄网站色视频免费观看 | 色 免费观看 | 国产精品久久久区三区天天噜 | 国产在线色视频 | 美女网色| 99久久国产免费,99久久国产免费大片 | 在线不卡中文字幕播放 | 99视频精品免费观看, | 国产91学生粉嫩喷水 | 人人草人人草 | 国产精品porn | 九七人人干 | 亚洲国产大片 | 99免费精品视频 | 911精品美国片911久久久 | 久久久久亚洲精品成人网小说 | 久久久久国产精品午夜一区 | 91麻豆精品国产 | 久久99这里只有精品 | 玖草影院 |