<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    小蟲的天地

    Java SE | Java EE | NetBeans | Open Source World | Groovy | Grails | JavaScript | jQuery
    隨筆 - 10, 文章 - 0, 評論 - 225, 引用 - 0
    數(shù)據(jù)加載中……

    NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器

      自從大一暑假開始到現(xiàn)在,我學(xué)習(xí)Java差不多快兩年的時間了,其間閱讀過無數(shù)的博客,從Java SE 到Java EE、從基礎(chǔ)類庫到各類框架、從編程思想到設(shè)計模式,我能從博客中學(xué)習(xí)到各種書本中沒有的東西,了解到各種新的技術(shù)。在此我感謝所有博主們辛勤的勞動,是你們的無私奉獻、知識共享的精神才讓我們這些初學(xué)者獲得了極佳的學(xué)習(xí)途徑,解決了我們初學(xué)者學(xué)習(xí)中遇到的大部分類似的問題。

    也正是這個原因,我一直想自己寫關(guān)于Java的博客,貢獻自己微薄的力量,但是鑒于時間和自己的能力,一直沒有開始。經(jīng)過快兩年的不斷學(xué)習(xí),還有閱讀了大量的有關(guān)Java的博客文章,我發(fā)現(xiàn)自己Java水平比起兩年前有了質(zhì)的提高,所以有了打算寫博客的念頭,一來記錄下自己學(xué)習(xí)的知識,二來想讓各位網(wǎng)友評論博客發(fā)現(xiàn)自己的不足,三來幫助像兩年前的我一樣的初學(xué)者。

    這是我的第一篇博客,我打算從IDE開始,為什么選擇NetBeans而不是Eclipse ?

    我發(fā)現(xiàn)周圍的初學(xué)者相對于Eclipse而言更喜歡NetBeans,我雖然NetBeans和 Eclipse都在使用,但自從NetBeans6.0 M9開始,我更喜歡使用NetBeans。那么為什么NetBeans讓那么多初學(xué)者愛不釋手呢,原因當(dāng)然是”Netbeans使用很簡單功能很強大” J。Netbeans沒有Eclipse安裝插件的煩惱,使用起來沒有 Eclipse那么復(fù)雜,NetBeans也完全是有插件組成的。

    NetBeans的真正威力只有真正體驗才知道,至于關(guān)于NetBeans啟動慢問題,前幾天6.1Beta出來后,NetBeans性能已經(jīng)有了很大提升。我的機子內(nèi)存為 2G,玩Netbeans非常爽。

    下面開始我的第一篇Java博客

    NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器

    代碼模板

    有些代碼或者關(guān)鍵字經(jīng)常使用,如果每次需要時我們都要一個一個字母輸入,那么效率是很低下的。Netbeans提供了方便的代碼模板功能,我們可以添加自己的模板。當(dāng)然Netbeans默然提供了一些常用的模板,你只要輸入代碼的 縮寫形式 + Tab鍵就可以生成相應(yīng)的代碼

    如:

    只要輸入 sout + Tab鍵就可以生成System.out.println(“”)了。

    下面給出常用幾個縮寫形式:

    Psf -----------public static final

    br ------------break

    fi -------------final

    im ------------implements

    ir --------------import

    le--------------length

    re-------------- return

    sout-----------System.out.println ("|");

    st --------------static

    查看更多的默認(rèn)代碼模板,請擇菜單欄的 幫助(help->快捷鍵列表(keyboard shortcuts Card

    當(dāng)然也可以添加自己的模板,從主菜單中選擇Tools > Options 選擇Editor


    可以修改或添加代碼模板,不止是
    Java語言哦。


    智能代碼提示、完成

    《代碼大全》里第十一章 變量名的力量 里說道變量名的作用非常重要。為變量命名時最重要的考慮事項是,該名字要完全,準(zhǔn)確地描述出該變量所代表的事物。

    上面的建議非常重要,好的變量名能讓代碼的意圖更清晰,代碼更可閱讀性。

    這也是為什么Java界里面很多類或者方法的名稱都是這么長的原因。

    這樣閱讀是清晰了,但是不便于輸入。如果讓你用純文本編寫 SSHSructsSpringHibernate),不考慮配置文件,你可能還是不愿意,因為SSH里面由于遵循良好的命名習(xí)慣,大部分類名和方法名都是非常長的。

    NetBeans 6.0Java編輯器提供超智能的代碼提示、完成功能,智能的程度絲毫不遜于IntelliJ IDEA,更不要說Eclipse了。

    下面讓我們通過試驗來看看NetBeans Java代碼編輯器智能到什么程度

    提示:代碼提示功能的快捷鍵為:Ctrl + 空格鍵 Ctrl+\ (反斜杠) ,由于Ctrl + 空格鍵和

    我們的中文輸入法沖突了,所以你可以用Ctrl+\,或者修改為自己喜歡的快捷鍵

    l         試驗一

    我們在Netbeans新建一個 Java 類,刪除掉IDE給我們生成的代碼然后按下Ctrl+\


    IDE識別出我們這時應(yīng)該用到的關(guān)鍵字

    l         試驗二:

    在一個類內(nèi)部中,我們按下Ctrl+\


    Foo是新建的類,默認(rèn)繼承Object 對象,看來IDE能識別出父類的方法clone()~toString

    Foo() generate 是產(chǎn)生Foo類的構(gòu)造方法

    后面是類內(nèi)部里面可能用到的關(guān)鍵字和java核心包里面的類和各個包

    l         試驗三:

    在一個方法內(nèi)部,我們按下Ctrl+\

    我們看到,代碼提示里提示有方法的參數(shù)名a,b,c

    l         試驗四:

    添加Spring


    然后在方法里面輸入
    Appli 再按下Ctrl+\

    看到?jīng)]有,Spring中的類名和 ”Appli”相關(guān)類都顯示出來了

    l         試驗五:

    在剛才的方法中輸入 ApplicationContext + 空格 + Ctrl+\


    呵呵,
    IDE幫我們想好了變量名的名稱了,以后再也不用為變量名發(fā)愁了

    我們引用相關(guān)變量看看

     


    試驗六:

    在一個類的方法中輸入 List list=new + 空格 + Ctrl+\





    我暈,多態(tài)都支持,呵呵。



    代碼生成

    如果NetBeans僅僅支持上面的代碼提示功能,那么NetBeans吸引力也不是很大,畢竟其它 IDE也提供相應(yīng)的功能,但是別急,我們慢慢享受IDE提供的免費大餐。

    下面繼續(xù)探索NetBeans的代碼編輯器的其它功能

    我們在類面添加兩個成員變量

     

        private String name;
        
    private String no;

     

    然后在類里面按 Alt + Insert鍵(或者右鍵彈出菜單選擇 insert code…


    l         產(chǎn)生構(gòu)造方法,setget方法


    一旦成員變量變多,代碼生成功能極大的方便了我們

    l         重寫父類方法

    Alt + Insert 選擇 Override Method…

    我可以重寫父類的方法

    l         代理成員變量的方法

    首先為了測試該功能,我們新建一個成員變量

    private List list;

    Alt + Insert 選擇 Delegate Method…


    然后如下圖所示

    下一步,產(chǎn)生了Listadd()代理方法,J



    l         我們還注意到,Netbeans 6.1beta里多了一個代碼產(chǎn)生選項

    Add Perprerty….

    用來增加成員變量




    聰明的小燈泡

    和其它IDE一樣, NetBeans提供相應(yīng)的代碼左邊出現(xiàn)一個小燈泡,以完成修復(fù)導(dǎo)入包等功能。

    l         包導(dǎo)入修復(fù)


    如上圖,單擊小燈泡后出現(xiàn)


    l         包圍代碼

    選擇一段代碼,代碼左邊將產(chǎn)生小燈泡


    點擊小燈泡


    我們再選擇
    Surround with for try{

    結(jié)果IDE為我們產(chǎn)生了

     

            try {

                System.out.println (
    "");

            }
     catch  (Exception exception) {

            }

     

    ^_^ ,還可以用其它語句包圍

    l         生成JavaDoc注釋


    結(jié)果
    IDE為我們生成了相應(yīng)的注釋


    提示:
    NetBeans6.0默認(rèn)不提供該功能,啟用該功能請確保Tools > Options > Java Code里的Javadoc里的選項都選中


    l         生成返回變量聲明

    我們經(jīng)常需要調(diào)用其它類的方法返回的值,每次調(diào)用都要聲明一下局部變量,相當(dāng)麻煩

    我們可以讓IDE來完成


    點擊將產(chǎn)生
        byte[] bytes = name.getBytes();


    代碼重構(gòu)

    《重構(gòu)——改善既有代碼的設(shè)計》一書里提供了超過70個已經(jīng)被證明效果的重構(gòu)手法,但是如果沒有IDE的支持,重構(gòu)過程中很容易出錯,這就是為什么很多人即使知道重構(gòu)的好處也不愿意重構(gòu)的原因。如果 IDE能提供很重構(gòu)的支持,那么重構(gòu)手法將變成半自動化,提高重構(gòu)的效率。

    現(xiàn)在讓我們來看看NetBeans 提供了哪幾種重構(gòu)手法:


    正如上圖所示,
    NetBeans提供了如下常用的重構(gòu)手法

    Change Method parameters(改變方法參數(shù))

    Pull Up(值域、方法上拉)

    Push Down(值域、方法下拉)

    Extract Interface(提煉接口)

    Extract Superclass(提煉超類)

    Move Inner to Outer Level(移動內(nèi)部類為外部類)

    Convert Anonymous to Inner(改變匿名類為內(nèi)部類)

    Introduce Variable(引入變量)

    Introduce Constant(引入常量)

    Introduce Field(引入值域)

    Introduce Method(引入方法)

    Encapsulate Fields(封裝值域)

    不明白重構(gòu)的初學(xué)者建議看《重構(gòu)——改善既有代碼的設(shè)計》一書(中國電力出版社)

    由于邊幅的原因,不能一一舉例,僅拿兩個重構(gòu)手法來舉例

    l         Introduce Method(引入方法)

    假如我們有如下Foo.java

     

    public class Foo{

        
    private String name;

        
    private String no;

        
    public void echo (String a, int b, Long c) {

            
    //--------------------

            System.out.println(
    "=========================");

            System.out.println(
    "           菜單           ");

            System.out.println(
    "=========================");

            
    //--------------------

            
    //其他關(guān)鍵代碼

            
    //--------------------

            System.out.println(
    "=========================");

            System.out.println(
    "           菜單           ");

            System.out.println(
    "=========================");

            
    //--------------------

        }


    }


    明顯字段代碼有冗余,需要Introduce Method重構(gòu),



    最后改為:

     

    public class Foo{

        
    private String name;

        
    private String no;

        
    public void echo (String a, int b, Long c) {

            showMenu();

            
    //--------------------

            
    //其他代碼

            
    //--------------------

            showMenu();

            
    //--------------------

        }


        
    private void showMenu() {

            
    //--------------------

            System.out.println(
    "=========================");

            System.out.println(
    "           菜單           ");

            System.out.println(
    "=========================");

            
    //--------------------

        }


    }


    l         Convert Anonymous to Inner(改變匿名類為內(nèi)部類)

    假如我們有如下Foo.java

     

    public class Foo{

        
    private String name;

        
    private String no;

        
    public void echo (final String a, final int b, final Long c) {

            
    new Thread(new Runnable() {

                
    public void run() {

                    System. out.println(a
    +b+c);

                }

            });

        }

    }

    上面的例子看起來不需要重構(gòu),但是這里僅僅是舉例怎么用Convert Anonymous to Inner手法

    把光標(biāo)放到new Thread()里面


    看看
    IDE給我們生成了什么:

     

    public class Foo{

        
    private String name;

        
    private String no;

        
    public void echo (final String a, final int b, final Long c) {

            
    new Thread(new RunnableImpl(a, b, c));

        }


        
    static class RunnableImpl implements Runnable {

            
    private final String a;

            
    private final int b;

            
    private final Long c;

            
    public RunnableImpl(String a, int b, Long c)  {

                
    this.a = a;

                
    this.b = b;

                
    this.c = c;

            }


            
    public void run() {

                System.out.println (a 
    + b + c);

            }


        }


    }


    結(jié)構(gòu)清晰了很多。


    總結(jié)

    其實NetBeans的代碼編輯器還很多非常強大的功能我沒有說明,鑒于邊幅原因,而且很多功能是可以自己親身體驗的,所以這里就不一一列舉出來。

    我的下一篇博客將介紹用NetBeans 開發(fā) Swing Application Framework (JSR 296) 程序。

    版權(quán)聲明:

    本文由令狐蟲原創(chuàng),歡迎轉(zhuǎn)載,轉(zhuǎn)載請保留博客地址:

    http://www.tkk7.com/linghuchong/

    posted on 2008-03-24 14:58 令狐蟲@qq.com 閱讀(6066) 評論(30)  編輯  收藏 所屬分類: NetBeans

    評論

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    Very Intelligent IDE.
    2008-03-24 15:59 | BeanSoft

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @BeanSoft
    BeanSoft 老師
    我知識的不斷積累,很大一部分歸功于你
    你為初學(xué)者創(chuàng)建了大量的學(xué)習(xí)素材
    正是有像你一樣無私的奉獻精神,
    初學(xué)者才不斷的進步、提高!
    謝謝您!~
    2008-03-24 16:10 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    不錯,把netbeans用得很仔細(xì),我們一起來支持netbeans吧
    2008-03-24 16:35 | 千里冰封

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器[未登錄]  回復(fù)  更多評論   

    java群 23133419
    歡迎您加入,尤其是討論java開源技術(shù)
    2008-03-24 16:50 | diego

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @千里冰封
    經(jīng)常關(guān)注你的博客
    以后會多向你請教
    2008-03-24 17:24 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器[未登錄]  回復(fù)  更多評論   

    我想說.....以上全部功能 Eclipse 都有

    而且大部份都已經(jīng)遠在 2.1 版本時代已經(jīng)存在了

    現(xiàn)在 E3.4 版/ 甚至 E4 已經(jīng)走得很遠很遠,
    甚至不會再在這種 "基本功能" 上面多討論
    2008-03-24 18:47 | Dennis

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @Dennis

    關(guān)于NetBeans,請看我最后的總結(jié)

    Eclipse 和 NetBeans 我都有用

    那個編輯器更好用?

    按照我的感受是:NetBeans 絕對勝出

    按照專家的說法請看:(也一樣是NetBeans 勝出)

    http://www.javaeye.com/news/1618
    2008-03-24 19:12 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    已經(jīng)習(xí)慣了eclipse,netbeans的亮點在UML圖上
    2008-03-24 19:44 | Edward's

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    作者講得不錯,Swing Application Framework 之前也了解過一點點,期待。
    2008-03-24 20:37 | Matthew Chen

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    要做到高效與減少IDE依賴并存
    2008-03-24 21:20 | 史蒂夫

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器[未登錄]  回復(fù)  更多評論   

    看樣博主真沒用過eclipse。
    2008-03-24 21:52 | xZeus

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    JavaEye那邊還是一如既往的吵鬧,誰也不服誰。
    2008-03-24 21:55 | 如坐春風(fēng)

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    是呀,大家多點分享,少點吵鬧,樓主做的很好。開發(fā)工具,用習(xí)慣了就好了,套一句蘋果老板的話:我們要創(chuàng)造用戶的使用習(xí)慣,而不是讓用戶來指出該如何使用。
    2008-03-24 22:53 | BeanSoft

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    一看就知道不熟悉Eclipse
    寫小程序vim也很不錯
    2008-03-24 23:17 | ZelluX

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @Matthew Chen
    你翻譯williamchen的AWT, SWT, Swing: Java GUI Clean Up
    我比較關(guān)注

    williamchen的http://blog.sina.com.cn/swingjava
    我以前一直都非常關(guān)注,可惜現(xiàn)在他好久沒有新博客了


    2008-03-24 23:19 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @xZeus
    @ZelluX

    在用NetBeans之前,我就已經(jīng)用Eclipse了

    但是你們現(xiàn)在拿MyEclipse這樣的插件,還有很多超豪華團隊做出來的Eclipse
    插件和NetBeans來比,我也無話可說。

    你們不用說服我,因為我也很喜歡用Eclipse,現(xiàn)在市場主流的框架Eclipse有成熟的插件

    但是隨著NetBeans 開始對非官方框架(像Struct 、Spring、Hibernate)的支持,再加上NetBeans本身對官方框架(EJB3.0 、JSF、WS)的超強支持等,NetBeans挑戰(zhàn)Eclipse的統(tǒng)治地位是無法避免的,我們不必再討論這么多,
    事實勝于雄辯。

    多一種選擇對于程序員來說不是更好嗎,IDE的競爭得益于程序員。


    2008-03-24 23:37 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @BeanSoft
    BeanSoft說的是,大家多點分享,你們多介紹些Ecilpse的使用技巧
    像BeanSoft的MyEclipse教程,我也非常樂意學(xué)習(xí)啊! :)
    2008-03-24 23:40 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    Good article, but many features described here have already been implented by Eclipse, and from Eclipse Europa, you can download the "Eclipse IDE for Java EE Developers" version which has many J2EE packages already installed, so this will remove you from download additional packages.
    2008-03-25 18:15 | Find it, try it, experience it

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @Find it, try it, experience it
    沒有像MyEclipse這樣的插件
    Eclipse Europa也起不到多大的作用
    2008-03-26 09:59 | 令狐蟲

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器[未登錄]  回復(fù)  更多評論   

    就有些神經(jīng),一看到別人說netbeans,他就跳出來說怎么怎么不好了,博主寫了篇很好的介紹文,你們怎么就不服了?
    2008-03-26 16:08 | wolf

    # 我永遠跟著sun公司走  回復(fù)  更多評論   

    畢竟netbeans是sun的。我相信netbeans更相信sun
    所以我要頂起
    2008-03-26 16:32 | 草包書生

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    看到了你的文章,才知道自己對Netbeans的了解是那么的少!看來以后要好好的利用Netbeans了。
    2008-03-26 20:51 | 日月雨林

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    陸續(xù)用了5.5,6.0.還是投入eclipse的懷抱。沒辦法,用的人多了,資料也多。溝通方便點。
    2008-04-01 13:15 | lhehuang

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    學(xué)校教的是JBuilder的。所以一般作業(yè)可以用Elicpset和JBuilder做。不過,由于習(xí)慣了JBuilder使用。在不是沒有辦法的情況下,一般不用Elicpse。不過,最近發(fā)現(xiàn)了netbean6.0.發(fā)覺真的很不錯。我又多了一種選擇。呵呵
    2008-04-02 12:03 | 小東西

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    netbean 新建class 時 怎么選擇繼承的類或者接口 找了半天都沒有 我用的是6.5測試版
    2008-09-19 16:15 | hucq

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @hucq
    Netbeans和Eclipse不一樣,Netbeans是通過模板類創(chuàng)建類的
    在Netbeans中類、接口等都有相應(yīng)的模板
    創(chuàng)建了這些類、接口后再進行相應(yīng)的修改。


    2008-09-19 19:57 | 令狐蟲@qq.com

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    你的意思是說 我如果想繼承一個類 就要現(xiàn)在模板里
    寫個

    pubilc classs xxx extend xxx {
    }

    才可以

    這可真的好麻煩 eclipse 和jbuilder 都不是這樣
    2008-09-20 14:19 | hucq

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @hucq
    呵呵!繼承一個類比起eclipse 和jbuilder 是麻煩了一點
    我也不明白為什么NetBeans沒有這個功能
    但這其實也沒有什么,現(xiàn)在的設(shè)計思想是聚集優(yōu)于繼承,盡量避免繼承吧。
    2008-09-20 15:01 | 令狐蟲@qq.com

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    介紹的這些功能在php版的netbeans里面基本都沒有
    2008-09-28 14:23 | phper

    # re: NetBeans 6.0 提高生產(chǎn)力之Java代碼編輯器  回復(fù)  更多評論   

    @phper
    之前我試用了一下NetBeans的PHP版,
    各種代碼提示、代碼完成功能都挺不錯的
    感覺PHP版也相當(dāng)優(yōu)秀!
    2008-09-28 14:55 | 令狐蟲@qq.com
    主站蜘蛛池模板: 97久久免费视频| 巨胸狂喷奶水视频www网站免费| 午夜视频免费在线观看| 亚洲av永久无码精品国产精品| 乱淫片免费影院观看| 亚洲中文字幕无码专区| 一级毛片无遮挡免费全部| 亚洲精品99久久久久中文字幕| 人妻仑刮八A级毛片免费看| 亚洲精品麻豆av| 成人av片无码免费天天看| 亚洲精品国产美女久久久| 97无码人妻福利免费公开在线视频 | 亚洲大尺度无码专区尤物| 国产一精品一AV一免费| 久久亚洲AV成人无码国产| 国产天堂亚洲国产碰碰| 免费在线精品视频| 成人免费无码H在线观看不卡| 国产亚洲情侣一区二区无码AV| APP在线免费观看视频| 久久精品国产亚洲av高清漫画 | 国产一区二区三区免费观在线| 国产AV无码专区亚洲AV手机麻豆 | xxxxxx日本处大片免费看| 亚洲国产精品无码久久一区二区| 免费一级毛片无毒不卡| 亚洲国产av高清无码| 四虎永久免费地址在线观看| jizz18免费视频| 亚洲一区中文字幕久久| 免费涩涩在线视频网| 国产精品免费久久| 亚洲精品视频免费看| 日日操夜夜操免费视频| 成人网站免费大全日韩国产| 97久久精品亚洲中文字幕无码| 国内自产拍自a免费毛片| 国产激情久久久久影院老熟女免费| 久久精品国产亚洲夜色AV网站| 久久久久久久久免费看无码|