黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術(shù)文章
文章詳情頁

剖析java的class文件結(jié)構(gòu)

瀏覽:138日期:2024-07-02 14:24:50
內(nèi)容: 定義:u1 1個字節(jié)為單位的非負值 u2 2個字節(jié)為單位的非負值 u3 . . . . . . . . (其他以此類推 ) Java文件結(jié)構(gòu)用類似struct的描述如下: ClassFile { u4 magic; // 必須為: 0xCAFEBABE u2 minor_version; u2 major_version; //CLASS文件結(jié)構(gòu)主次版本號 JAVA2支持45.0-46.0 u2 constant_pool_count; //記錄常量信息 cp_info constant_pool[constant_pool_count-1]; //計數(shù)從1開始 u2 access_flags; //class/interface訪問權(quán)限 u2 this_class; //指向constant_poll中的有效索引值 u2 super_class; //0或指向constant_poll中的有效索引值,對于interface必須為非0 u2 interfaces_count; //superinterfaces的個數(shù) u2 interfaces[interfaces_count]; //計數(shù)[0,count-1) 對應(yīng)constant_pool中的一個索引值 u2 fields_count; field_info fields[fields_count]; //主要用于記錄class及實例中的變量 u2 methods_count; method_info methods[methods_count]; u2 attributes_count; attribute_info attributes[attributes_count]; } cp_info { u1 tag; u1 info[]; }tag 意義如下: CONSTANT_Class 7 CONSTANT_Fieldref 9 CONSTANT_Methodref 10 CONSTANT_InterfaceMethodref 11 CONSTANT_String 8 CONSTANT_Integer 3 CONSTANT_Float 4 CONSTANT_Long 5 CONSTANT_Double 6 CONSTANT_NameAndType 12 CONSTANT_Utf8 1 此時cp_info分別對應(yīng)結(jié)構(gòu)變化為 1. CONSTANT_Class CONSTANT_Class_info { u1 tag; u2 name_index; } 2. CONSTANT_Fieldref CONSTANT_Fieldref_info { u1 tag; u2 class_index; //constant_pool的索引,對應(yīng)CONSTANT_Class_info u2 name_and_type_index;//constant_pool的索引,對應(yīng)CONSTANT_NameAndType_info } 3. CONSTANT_Methodref CONSTANT_Methodref_info { u1 tag; u2 class_index; u2 name_and_type_index; } 4. CONSTANT_InterfaceMethodref CONSTANT_InterfaceMethodref_info { u1 tag; u2 class_index; u2 name_and_type_index; } 5. CONSTANT_String CONSTANT_String_info { u1 tag; u2 string_index; } 6. CONSTANT_Integer CONSTANT_Integer_info { u1 tag; u4 bytes; } 7. CONSTANT_Float CONSTANT_Float_info { u1 tag; u4 bytes; } 8. CONSTANT_Long CONSTANT_Long_info { u1 tag; u4 high_bytes; u4 low_bytes; } 9. CONSTANT_Double CONSTANT_Double_info { u1 tag; u4 high_bytes; u4 low_bytes } 10.CONSTANT_NameAndType CONSTANT_NameAndType_info { u1 tag; u2 name_index; u2 descriptor_index; } 11.CONSTANT_Utf8 CONSTANT_Utf8_info { u1 tag; u2 length; u1 bytes[length]; } access_flags意義如下: ACC_PUBLIC 0x0001 ACC_FINAL 0x0010 ACC_SUPER 0x0020 ACC_INTERFACE 0x0200 ACC_ABSTRACT 0x0400 如果是interface那么必須置ACC_INTERFACE,如果沒有置ACC_INTERFACE則定義的是一個類而非接口。 如果設(shè)置了ACC_INTERFACE,那么ACC_ABSTRACT位也必須被設(shè)置,當然也可以設(shè)置ACC_PUBLIC。 ACC_SUPER用以表明invokespecial語義,Sun公司老的JAVA編譯器沒有設(shè)置ACC_SUPER,并且老的JVM 忽略ACC_SUPER位,但新的編譯器應(yīng)該實現(xiàn)invokespecial語義。 其他未指明的位保留將來使用,并且編譯器應(yīng)當將其置為0,同時Java虛擬機應(yīng)當忽略他們。 this_class: constant_pool中的索引值,指向的元素的cp_info等價為CONSTANT_Class_info CONSTANT_Class_info { u1 tag; //必須為CONSTANT_Class (7) u2 name_index; //為指向constant_pool中的一個索引值 } name_index :指向的元素的cp_info等價為CONSTANT_Utf8_info CONSTANT_Utf8_info { u1 tag; //必須為CONSTANT_Utf8 (1) u2 length; u1 bytes[length]; //Utf8編碼的字符串 } field_info { u2 access_flags; //訪問控制權(quán) u2 name_index; //constant_pool中的索引,對應(yīng)于CONSTANT_Utf8_info描述。 u2 descriptor_index; //constant_pool中的索引,對應(yīng)于CONSTANT_Utf8_info描述。 u2 attributes_count; attribute_info attributes[attributes_count]; //attribute_info將在mothods后描述。 } field_info中access_flages意義如下: ACC_PUBLIC 0x0001 ACC_PRIVATE 0x0002 ACC_PROTECTED 0x0004 ACC_STATIC 0x0008 ACC_FINAL 0x0010 ACC_VOLATILE 0x0040 ACC_TRANSIENT 0x0080 其中很顯然不能同時為ACC_FINAL和ACC_VOLATILE ;且前三項是互斥的。 interface必須置ACC_PUBLIC, ACC_STATIC,ACC_FINAL位,且不能置其他位。 其他未指明的位保留將來使用,并且編譯器應(yīng)當將其置為0,同時Java虛擬機應(yīng)當忽略他們。 methods指明了類中的所有方法。 method_info { u2 access_flags; u2 name_index; //指向constant_pool的入口,對應(yīng)為CONSTANT_Utf8_info u2 descriptor_index; //指向constant_pool的入口,對應(yīng)為CONSTANT_Utf8_info u2 attributes_count; attribute_info attributes[attributes_count]; //此處只能出現(xiàn)Code、Exceptions、Synthetic、Deprecated四種類型的屬性 } access_flags訪問權(quán)描述如下: ACC_PUBLIC 0x0001 ACC_PRIVATE 0x0002 ACC_PROTECTED 0x0004 ACC_STATIC 0x0008 ACC_FINAL 0x0010 ACC_SYNCHRONIZED 0x0020 ACC_NATIVE 0x0100 ACC_ABSTRACT 0x0400 ACC_STRICT 0x0800 attribute_info { u2 attribute_name_index; //constant_pool中的索引,對應(yīng)于CONSTANT_Utf8_info描述。 u4 attribute_length; u1 info[attribute_length]; } 現(xiàn)在已經(jīng)預定義的屬性有: 1. SourceFile : attribute_info被替代為: SourceFile_attribute { u2 attribute_name_index; u4 attribute_length; u2 sourcefile_index; //指向constant_pool中的一個CONSTANT_Utf8_info 結(jié)構(gòu)。 } 2. ConstantValue : attribute_info被替代為: ConstantValue_attribute { u2 attribute_name_index; u4 attribute_length; //必須為2 u2 constantvalue_index; } 對于constantvalue_index意義如下: longCONSTANT_Long floatCONSTANT_Float double CONSTANT_Double int, short, char, byte, boolean CONSTANT_Integer String CONSTANT_String ConstantValue用于field_info 中,用于描述一個static常量, 且此時field_info的access_flags應(yīng)為ACC_STATIC 3. Code : attribute_info被替代為: Code_attribute { u2 attribute_name_index; u4 attribute_length; u2 max_stack; //執(zhí)行此函數(shù)時可用的棧的最大深度 u2 max_locals; //執(zhí)行此函數(shù)可用到的最大本地變量數(shù)目,包括參數(shù)。 // 注意:一個long/double相當于2個變量數(shù)目. u4 code_length; //本函數(shù)用到的代碼長度。 u1 code[code_length]; //實現(xiàn)本函數(shù)的真正字節(jié)碼 u2 exception_table_length; { u2 start_pc; u2 end_pc; //捕獲違例時執(zhí)行代碼數(shù)組中的[start_pc, end_pc)部分 u2 handler_pc; //現(xiàn)在還不大明白他是干嘛的!! u2 catch_type; //指向constant_pool的索引,對應(yīng)CONSTANT_Class_info }exception_table[exception_table_length]; u2 attributes_count; attribute_info attributes[attributes_count]; } CONSTANT_Class_info { u1 tag; //必須為CONSTANT_Class (7) u2 name_index; //不用我再說了吧? } Code屬性用于method_info結(jié)構(gòu)中。 4. Exceptions : attribute_info被替代為: Exceptions_attribute { u2 attribute_name_index; u4 attribute_length; u2 number_of_exceptions; u2 exception_index_table[number_of_exceptions]; } 5. InnerClasses : attribute_info被替代為: InnerClasses_attribute { u2 attribute_name_index; u4 attribute_length; u2 number_of_classes; { u2 inner_class_info_index; u2 outer_class_info_index; u2 inner_name_index; u2 inner_class_access_flags; } classes[number_of_classes]; } 6. Synthetic : attribute_info被替代為: Synthetic_attribute { u2 attribute_name_index; //不用廢話了吧? u4 attribute_length; //必須為0 } Synthetic用在 field_info、 method_info 中, 一個沒有出現(xiàn)在源程序中的變量必須使用Synthetic標記。 7. LineNumberTable : attribute_info被替代為: LineNumberTable_attribute { u2 attribute_name_index; u4 attribute_length; u2 line_number_table_length; { u2 start_pc; //代碼數(shù)組中的開始處 u2 line_number; //源文件中的行號(對于每一非空行都有這么一項) } line_number_table[line_number_table_length]; } LineNumberTable用于Code屬性中,通常用于調(diào)試。 8. LocalVariableTable : attribute_info被替代為: LocalVariableTable_attribute { u2 attribute_name_index; u4 attribute_length; u2 local_variable_table_length; { u2 start_pc; u2 length; //當解釋到代碼數(shù)組的[start_pc,start_pc+length] //時變量必須被賦值?? u2 name_index; u2 descriptor_index; u2 index; //到本地變量數(shù)組的一個索引 } local_variable_table[local_variable_table_length]; } 9. Deprecated : attribute_info被替代為: Deprecated_attribute { u2 attribute_name_index; u4 attribute_length; //必須為0 } 當然你也可以定義自己的屬性,但要你自己的編譯器和虛擬機實現(xiàn)。JVM將忽略自己不認可的屬性。來實踐一下吧!編寫一個最簡單的程序:class Test { public static void main(String[] args) { System.out.println('Hello World!'); }}c:work>javac Test.javac:work>filedump Test.classFile Dump V0.3 Beta by cloud (safesuite@363.net).01:00 ca fe ba be 00 03 00 2d 00 1d 0a 00 06 00 0f 09 .......-........01:01 00 10 00 11 08 00 12 0a 00 13 00 14 07 00 15 07 ................01:02 00 16 01 00 06 3c 69 6e 69 74 3e 01 00 03 28 29 ........()01:03 56 01 00 04 43 6f 64 65 01 00 0f 4c 69 6e 65 4e V...Code...LineN01:04 75 6d 62 65 72 54 61 62 6c 65 01 00 04 6d 61 69 umberTable...mai01:05 6e 01 00 16 28 5b 4c 6a 61 76 61 2f 6c 61 6e 67 n...([Ljava/lang01:06 2f 53 74 72 69 6e 67 3b 29 56 01 00 0a 53 6f 75 /String;)V...Sou01:07 72 63 65 46 69 6c 65 01 00 09 54 65 73 74 2e 6a rceFile...Test.j>d02:00 61 76 61 0c 00 07 00 08 07 00 17 0c 00 18 00 19 ava.............02:01 01 00 0c 48 65 6c 6c 6f 20 57 6f 72 6c 64 21 07 ...Hello World!.02:02 00 1a 0c 00 1b 00 1c 01 00 04 54 65 73 74 01 00 ..........Test..02:03 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 .java/lang/Objec02:04 74 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 53 79 t...java/lang/Sy02:05 73 74 65 6d 01 00 03 6f 75 74 01 00 15 4c 6a 61 stem...out...Lja02:06 76 61 2f 69 6f 2f 50 72 69 6e 74 53 74 72 65 61 va/io/PrintStrea02:07 6d 3b 01 00 13 6a 61 76 61 2f 69 6f 2f 50 72 69 m;...java/io/Pri>d03:00 6e 74 53 74 72 65 61 6d 01 00 07 70 72 69 6e 74 ntStream...print03:01 6c 6e 01 00 15 28 4c 6a 61 76 61 2f 6c 61 6e 67 ln...(Ljava/lang03:02 2f 53 74 72 69 6e 67 3b 29 56 00 20 00 05 00 06 /String;)V. ....03:03 00 00 00 00 00 02 00 00 00 07 00 08 00 01 00 09 ................03:04 00 00 00 1d 00 01 00 01 00 00 00 05 2a b7 00 01 ............*...03:05 b1 00 00 00 01 00 0a 00 00 00 06 00 01 00 00 00 ................03:06 01 00 09 00 0b 00 0c 00 01 00 09 00 00 00 25 00 ..............%.03:07 02 00 01 00 00 00 09 b2 00 02 12 03 b6 00 04 b1 ................>d04:00 00 00 00 01 00 0a 00 00 00 0a 00 02 00 00 00 05 ................04:01 00 08 00 06 00 01 00 0d 00 00 00 02 00 0e ..............>解讀一下:ca fe ba be magic00 03 00 2d 次主版本號,換算一下: 45.3 (注意,不是高字節(jié)在前,別犯職業(yè)??!)00 1d constant_pool元素個數(shù)加一 : 29 那么constant_pool就是[1-28]constant_pool: 1-281. 0a 00 06 00 0f 0x0a :CONSTANT_InterfaceMethodref 0x06 :class index 0x0f :name-type-index2. 09 00 10 00 11 0x09 : CONSTANT_Fieldref 0x10: . . . 0x11 : . . . .3. 08 00 12 0x08 : CONSTANT_String 0x12 : string_index4. 0a 00 13 00 14 0x0a同于1.5. 07 00 15 0x07 : CONSTANT_Class 0x15 : name_index6. 07 00 16 7. 01 00 06 3c 69 6e 69 74 3e 01 ... 0x01 CONSTANT_Utf8 0x06 : string length '' : 構(gòu)造函數(shù)8. 01 00 03 28 29 56 ...()V 函數(shù),無參數(shù) 0x01 . . . . . . 0x03 : . . . . '()V' : . . .9. 01 00 04 43 6f 64 65 ...Code10. 01 00 0f 4c 69 6e 65 4e 75 6d 62 65 72 54 61 62 6c 65 ...LineNumberTable11. 01 00 04 6d 61 69 6e ...main12. 01 00 16 28 5b 4c 6a 61 76 61 2f 6c 61 6e 67 2f 53 74 72 69 6e 67 3b 29 56 ...([Ljava/lang/String;)V 函數(shù),參數(shù)為String[]類型13. 01 00 0a 53 6f 75 72 63 65 46 69 6c 65 ...SourceFile14. 01 00 09 54 65 73 74 2e 6a 61 76 61 ...Test.java15. 0c 00 07 00 08 0x0c:CONSTANT_NameAndType 07 : name-index 08:name-type-index16. 07 00 1717. 0c 00 18 00 1918. 01 00 0c 48 65 6c 6c 6f 20 57 6f 72 6c 64 21 ...Hello World!19. 07 00 1a20. 0c 00 1b 00 1c21. 01 00 04 54 65 73 74 ...Test22. 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 ...java/lang/Object23. 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 53 79 73 74 65 6d ...java/lang/System24. 01 00 03 6f 75 74 ...out25. 01 00 15 4c 6a 61 76 61 2f 69 6f 2f 50 72 69 6e 74 53 74 72 65 61 6d 3b ...Ljava/io/PrintStream;26. 01 00 13 6a 61 76 61 2f 69 6f 2f 50 72 69 6e 74 53 74 72 65 61 6d...java/io/PrintStream27. 01 00 07 70 72 69 6e 74 6c 6e ...println28. 01 00 15 28 4c 6a 61 76 61 2f 6c 61 6e 67 2f 53 74 72 69 6e 67 3b 29 56 ...(Ljava/lang/String;)V00 20 access_flags 00 05 this_class00 06 super_class00 00 interfaces_count00 00 fields_count00 02 methods_countmethods[2]:method_info { u2 access_flags; u2 name_index; u2 descriptor_index; u2 attributes_count; attribute_info attributes[attributes_count];}0. 00 00 access_flags; 00 07 name_index; 看看constant_pool的第7項: 表明當前描述構(gòu)造函數(shù) 00 08 descriptor_index; 00 01 attributes_count; 00 09 attribute_name_index 0x09 看看constant_pool的第9項,簡單明了Code !! 00 00 00 1d attribute_length = 29 00 01 max_stack 00 01 max_locals 00 00 00 05 code_length 2a b7 00 01 b1 JVM定義的操作碼代碼段數(shù)組 00 00 exception_table_length 00 01 attributes_count 一個,接下來是attribute_info結(jié)構(gòu) 00 0a attribute_name_index 看看constant_pool的第10項: LineNumberTable(顯然調(diào)試用) 00 00 00 06 attribute_length 00 01 line_number_table_length 00 00 start_pc 00 01 line_number1. 00 09 access_flags PUBLIC & STATIC 00 0b name_index; 表明當前描述main函數(shù) 00 0c descriptor_index; ...([Ljava/lang/String;)V 00 01 attributes_count; 00 09 attribute_name_index Code 00 00 00 25 attribute_length = 37 00 02 max_stack 00 01 max_locals 00 00 00 09 code_length b2 00 02 12 03 b6 00 04 b1 代碼數(shù)組 codeArray1[0-8] 00 00 exception_table_length 00 01 attributes_count 接下來是attribute_info結(jié)構(gòu) 00 0a attribute_name_index LineNumberTable 00 00 00 0a attribute_length 00 02 line_number_table_length 00 00 start_pc 00 05 line_number 00 08 start_pc : codeArray1[8] = 0xb1 return 00 06 line_number 第6行源程序為 } 00 01 attributes_count00 0d attribute_name_index 屬性為SourceFile00 00 00 02 attribute_length00 0e sourcefile_index constant_pool[0x0e] ---> 'Test.java'接下來我們看看main()函數(shù)對應(yīng)的代碼:b2 00 02 12 03 b6 00 04 b10xb2 0x00 0x02 : getstatic #2 看看constant_pool[0x02] :09 00 10 00 11 0x09 : CONSTANT_Fieldref 0x10: class index 0x11 :name-type-index constant_pool[0x10]: constant_pool[0x17] : java/lang/System constant_pool[0x11]: 0x18 : class index 0x19 :name-type-index constant_pool[0x18] : out constant_pool[0x19] : Ljava/io/PrintStream 即 System.out 為 java.io.PrintStream 類型 0x12 0x03 : ldc #3 看看 constant_pool[3] : 08 00 12 0x08 : CONSTANT_String 0x12 : string_index 指向一個字符串 constant_pool[0x12]: 'Hello World!' 故該指令加載了字符串索引到本地棧0xb6 0x00 0x04: invokevirtual #4 -----到constant_pool查查 0x13 :class 0x14 :name-type 看看constant_pool[0x13]:java/io/PrintStream constant_pool[20] : 00 1b 00 1c constant_pool[0x1b]:println . . . . :(Ljava/lang/String;)V 故該指令調(diào)用了 java.io.PrintStream.println(java.lang.String) 而參數(shù)則為 ldc #3 加載的 'Hello World!'0xb1 : return關(guān)于opcode的更多信息參見 http://mrl.nyu.edu/~meyer/jvmref/ 和JVM文檔轉(zhuǎn)自 http://watercloud.nease.net/ Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽: Java
相關(guān)文章:
主站蜘蛛池模板: 一级淫片在线观看 | 禁断一区二区三区在线 | 精品无码国产av一区二区 | 欧美精品99久久久 | 欧美裸体性生活 | 性一交一乱一透一a级 | 无码中文字幕av免费放 | 欧美人狂配大交3d怪物一区 | av资源共享| 亚洲美女色| 9999精品视频 | 在线免费观看毛片 | 亚洲欧美人成电影在线观看 | 国产精品三级久久久久三级 | 黄频在线免费观看 | 污污视频网站免费观看 | 国自产拍偷拍精品啪啪一区二区 | 99热9| 国产成人精品一区二区阿娇陈冠希 | 插鸡网站在线播放免费观看 | 性高朝久久久久久久3小时 av片在线观看 | 亚洲涩涩 | 中文人妻熟女乱又乱精品 | 97色伦97色伦国产欧美空 | 中文人妻熟女乱又乱精品 | 国产午夜久久 | 黑人狂躁日本妞hd | 欧美日韩一本 | 国产视频欧美 | 国内毛片视频 | 一边捏奶头一边高潮视频 | 欧美牲交a欧美牲交aⅴ一 | 精品无码国产自产拍在线观看蜜 | 亚洲九九九九 | 亚洲干| 四虎国产成人精品免费一女五男 | 亚洲精品国产a久久久久久 亚洲精品国产crm | www夜夜爽| av中文字幕网站 | 色婷婷在线观看视频 | 日本大香伊一区二区三区 | 日韩国产小视频 | 精品一区在线播放 | 天堂资源中文在线 | 国产成人免费av一区二区午夜 | 久章草在线精品视频免费观看 | 国精产品999永久天美 | 一区二区三区黄色 | 欧美一级淫片aaaa | 四虎4hu永久免费深夜福利 | 国产精品69久久久久999小说 | 欧洲另类一二三四区 | 粉嫩一区二区三区四区公司1 | 久久免费的精品国产v∧ | 动漫3d精品一区二区三区乱码 | 亚洲欧美福利视频 | 丝袜美腿亚洲一区二区图片 | ree性亚洲88av | 国产人妻大战黑人20p | 好吊在线视频 | 黄色一级片免费 | 亚洲欧美日韩精品永久在线 | 午夜国产精品国产自线拍免费人妖 | 欧美性xxxxx 欧美性xxxxxx | 亚洲熟妇av午夜无码不卡 | 日本少妇中文字幕 | 一本一道久久久a久久久精品蜜臀 | 1区2区3区视频| 中国女人一级一次看片 | 日韩欧一区二区三区 | 日日摸夜夜添夜夜添国产精品 | 亚洲欧美婷婷六月色综合 | 亚洲第一网站在线观看 | 国产对白不带套毛片av | 97色偷偷色噜噜狠狠爱网站 | 韩国美女av | 97影院在线午夜 | 另类毛片 | 亚洲欧美韩国 | 69xxx少妇按摩视频 | 国产又黄又猛 | 成人性做爰 | 日日干夜夜艹 | 久久国产精品99精国产 | 大奶一区 | 欧美寡妇xxxx黑人猛交 | 亚洲性无码av中文字幕 | 91麻豆精品国产91久久久更新时间 | 成人黄色大全 | 国产91精品入口 | 狠狠色很很在鲁视频 | 四虎影视久久久免费 | 在线干| 岛国av不卡 | 国产免费无码一区二区视频 | 香蕉视频在线观看网站 | 6080yy午夜一二三区久久 | 天堂资源中文网 | 亚洲欧美成人网 | 国产美女久久久 | 亚洲天堂久 | 欧美yyy | 国精产品一二三区传媒公司 | 亚洲在线一区二区 | 99精品视频在线观看免费播放 | 朝鲜女人性猛交 | 三级特黄视频 | 日本一区二区三区免费视频 | 久久免费影院 | 我要看三级毛片 | 色乱码一区二区三区 | 一级作爱片 | 成人免费淫片aa视频免费 | 美女扒开屁股让男人桶 | 少妇愉情理伦片丰满丰满午夜 | 一区二区免费看 | 欧美日韩一区二区三区在线 | 人妻夜夜爽天天爽 | 污污免费在线观看 | 午夜无码一区二区三区在线观看 | 国产精品无码电影在线观看 | 黄色片亚洲 | 欧美性插动态图 | 日韩有码中文字幕在线观看 | 中国色视频 | www.youjizz日本| 国产对白不带套毛片av | 激情五月av久久久久久久 | 美女100%挤奶水视频吃胸网站 | 国产人成看黄久久久久久久久 | 91丝袜呻吟高潮美腿白嫩在线观看 | 91视频在线观看视频 | 欧美亚洲在线播放 | 天堂成人网 | 欧美精品区 | 丁香亚洲| 国产精品一二三区成毛片视频 | 妩媚尤物娇喘无力呻吟在线视频 | 亚洲色图第三页 | 少妇人妻偷人精品无码视频新浪 | 性一交一乱一色一情丿按摩 | 色婷婷婷婷色 | 中文字幕综合网 | 巨胸爆乳美女露双奶头挤奶 | 国产高清在线精品一区二区三区 | 国产午夜亚洲精品理论片色戒 | 亚洲国产网 | 视频这里只有精品 | 中文字幕综合 | 亚洲男女在线 | 特黄1级潘金莲 | 精品剧情v国产在线观看 | 免费毛片一级 | 狠狠色噜噜狠狠狠狠2022 | 无套内谢88av免费看 | 色综合久久综合网 | 天天干天天爱天天射 | 催眠肉高h喷汁呻吟np | 久久影院中文字幕 | 四虎久久久久 | 精品国产一区二区三区av爱情岛 | 亚洲视频在线观看免费的欧美视频 | 在线观看视频一区二区三区 | 一级片久久久久久久 | 日韩一级理论片 | 中文在线a√在线 | 丁香花免费高清完整在线播放 | 91精品国产综合久久四虎久久 | 九一色视频 | 国产av国片偷人妻麻豆 | 99久久精品国产免费看不卡 | 国产性色av高清在线观看 | 日韩不卡手机视频在线观看 | 国产精品51麻豆cm传媒 | 中文字幕二 | 一本久道久久综合狠狠爱 | 色综合五月天 | 亚洲综合色丁香婷婷六月图片 | 亚洲综合精品在线 | 日韩精品无 | 国产精品久久久久国产三级传媒 | 久久久久久久久久久久久9999 | 成人综合色站 | 国产免费一区二区视频 | 亚洲色无码播放 | 亚洲艹逼视频 | 国产一区内射最近更新 | 综合亚洲网 | 无码高潮少妇毛多水多水免费 | av网站在线免费观看 | 天天做天天爱夜夜爽少妇 | 久久久综合亚洲91久久98 | 调教贱奴视频一区二区三区 | 国产成人精品a视频一区 | 桃子视频在线www88av | 国模一区二区三区四区 | 日本三级韩国三级美三级91 | 午夜精品久久久久久久99 | 国产精品51麻豆cm传媒 | 日本国产乱弄免费视频 | 亚洲另类自拍 | 欧美性视频一区二区三区 | 最新久久久 | 久久午夜精品视频 | 九九九九九依人 | 姑娘第5集在线观看免费 | 成人妖精视频yjsp地址 | 色综合欧美在线视频区 | 成人在线激情视频 | 亚洲毛片视频 | eeuss国产一区二区三区 | 福利cosplayh裸体の福利 | 成人毛片基地 | 激情网五月 | 果冻传媒18禁免费视频 | 男人全程不遮挡撒尿视频 | 欧美日韩色综合 | 成人性生交免费大片 | 欧美黑人一区二区 | 99热最新网址| 欧美特黄一级大片 | 高清成人免费视频 | 日韩区在线 | 九草在线| 成人性生生活性生交全黄 | 日日摸天天做天天添天天欢 | 毛片黄色一级 | 欧美精品亚洲精品日韩精品 | 久久久久久久久久亚洲 | 欧美3p两根一起进高清免费视频 | 天天躁日日躁狠狠躁性色av王爷 | 亚洲羞羞| 在线观看日本视频 | 美女乱淫免费视频网站 | 欧美大尺度床戏做爰 | 精品国产第一区二区三区的特点 | 成人影视免费观看 | 性一交一性一色一性一乱 | 久青草免费视频 | 欧美激情午夜 | 西西人体大胆午夜视频 | 天天射日日操 | 在线三区 | 热久久久久久久久 | 十八岁以下禁止观看黄下载链接 | 国产成人高清精品免费 | 欧美日韩精品一区二区 | 精品国精品国产自在久不卡 | 国产成人无码精品久久久性色 | 欧美日韩在线视频一区 | 欧美二区三区91 | 少妇下面好紧好多水真爽播放 | 实拍男女野外做爰视频 | 黄色性视频网站 | 欧美国产日韩在线观看 | 国产午夜精品福利视频 | 亚洲第一极品精品无码 | 欧美国产日韩a在线视频 | 狠狠欧美| 国产视频h | 丰满少妇猛烈进人免费看高潮 | 被灌满精子的少妇视频 | 亚洲亚洲人成综合网络 | 中文字幕一区二区三区手机版 | 天天操,夜夜操 | 精品无码国产一区二区三区51安 | 六姐妹在线观看免费 | 二区在线播放 | 久久精品国产欧美亚洲人人爽 | 欧美成人免费在线 | 男女激情啪啪18 | 亚洲综合av一区二区三区 | 久久影片 | 成人免费视频毛片 | 免费在线黄 | 野花国产精品入口 | 东北少妇白嫩bbwbbw | av网站在线观看不卡 | 国产美女裸身网站免费观看视频 | 国产主播一区二区 | 91丨九色丨国产在线 | 天天综合网天天综合色 | 99精品久久久 | 乱女午夜精品一区二区三区 | 99热在线只有精品 | 99久久精品免费看国产免费粉嫩 | 日本免费网址 | 欧美成人另类 | 国产91对白在线观看九色 | 麻豆国产97在线 | 欧洲 | 日本做爰高潮片免费视频 | 黄色欧美在线观看 | 亚洲综合av一区二区三区 | 深夜av在线播放 | 欧美a级黄 | 国产二区精品 | 丁香花婷婷| 国产精品69久久久久水密桃 | 国产精品不卡在线观看 | 成人宗合网 | 免费黄色在线播放 | 国产一区二区毛片 | 香港三日本三级少妇66 | 午夜妇女aaaa区片 | 大学生高潮无套内谢视频 | 亚洲精品乱码久久久久久日本蜜臀 | 已婚少妇美妙人妻系列 | 国产精品va无码一区二区 | 日本老肥婆bbbwbbbwzr | 色悠久| 欧美激情综合色综合啪啪五月 | 99九九视频| 国产女人18毛片水真多1kt∧ | 麻豆精品在线播放 | x88av乱视频| 一级女人18片毛片蜜桃av | 一区二区免费在线观看视频 | a极黄色片 | 成年人网站免费观看 | 亚洲精华国产精华精华液网站 | 农村少妇一区二区三区四区五区 | 国产精品久久久久久久久久 | 天天夜碰日日摸日日澡性色av | 九色精品视频 | 五月色综合 | 欧美精品免费看 | 国产变态拳头交视频一区二区 | 天天插天天操 | 成av人在线观看 | 成人欧美一区二区三区视频 | 精品国产av无码一区二区三区 | 中文字幕网站在线观看 | 中文字幕网站在线观看 | 亚洲日日操| 可以免费看成人啪啪过程的软件 | 黄色大片儿 | 中文字幕有码av | 亚洲欧美一区二区三区视频 | 婷婷影院在线观看 | 黄色三级图片 | 成人羞羞视频在线看网址 | 色香欲天天影视综合网 | 四川丰满少妇毛片新婚之夜 | av片手机在线观看 | 久久久蜜桃一区二区 | 黄色高清网站 | 亚洲欧美日韩综合俺去了 | 亚洲色图首页 | 无码内射中文字幕岛国片 | 午夜精品一区二区三区在线视 | 精品1卡二卡三卡四卡老狼 国内大量偷窥精品视频 | 久久曹 | av免费观看不卡 | 成人久久免费视频 | 欧美性xxxx极品hd大豆行情 | 国产精品老热丝在线观看 | 日本综合在线 | 日本人又黄又爽又色的图片 | 精品欧美一区二区久久久伦 | 亚洲a成人片在线观看 | 在线观看av网 | www7788久久久久久久久 | 欧美亚洲国产视频 | 亚洲熟妇国产熟妇肥婆 | 日本少妇xxxxx | 成视频年人黄网站免费视频 | 欧美一卡二卡 | 少妇太爽了太深了太硬了 | 特级黄色大片 | 中日韩在线观看视频 | 大肉大捧一进一出视频 | 国产午夜福利片在线观看 | 三级久久| 国精无码欧精品亚洲一区 | 色综合久久久无码中文字幕 | 国产麻豆精品一区二区三区v视界 | 手机看片日韩精品 | 国产精品一卡二卡三卡四卡 | 俺也来俺也去俺也射 | 中文字幕一区二区三区av | 精品久久久爽爽久久男人和男人 | wwww.8888久久爱站网 | 中文字幕一区二区三区精华液 | 国产无毛片 | 美女在线观看av | 亚洲成人一区在线观看 | 99热在线观看| 日韩一区二区三区视频 | 99精品视屏| 国产高清www | 国产精品女同一区二区 | 亚洲精品影视 | 成年人的视频网站 | 一级又爽又黄的免费毛片视频 | 国产免费黄色大片 | 台湾色综合 | 手机在线毛片 | 久久亚洲欧美国产精品 | 国产夫妻一区 | 中文字幕永久在线视频 | 色人阁视频 | 免费在线视频一区 | 噜噜啪永久免费视频 | 国产亚洲精品美女久久久久 | 麻豆精品av| 国内成人综合 | 性一交一乱一色一视频麻豆 | 国产日韩精品一区二区 | 国产黄在线 | 欧美一级免费看 | 成人久久免费网站 | 九九九热视频 | 伊人天堂av | 无码东京热一区二区三区 | 国产毛a片啊久久久久久保和丸 | 18禁裸乳无遮挡自慰免费动漫 | 人妻人人添人妻人人爱 | 天堂中文在线观看 | 久久久久国色av免费观看性色 | 五月天婷婷亚洲 | 中日韩一线二线三线视频 | 妓院一钑片免看黄大片 | 日韩成人欧美 | 成熟丰满熟妇高潮xxxxx视频 | √天堂中文在线 | 欧美色成人 | 国产免费av一区 | 深夜福利视频免费观看 | 欧美体内谢she精2性欧美 | 欧美mv日韩mv国产网站app | 7k7k在线看片午夜 | 欧美精品在线免费观看 | 免费av网址在线 | 免费的大尺度在线观看网站 | 日本最新免费二区三区 | 欧美不卡网 | 亚洲人成亚洲精品 | 国产亚洲精品久久yy50 | 美女久久精品 | 富婆找两个黑人3p在线视频 | 中文字幕av免费专区 | 人妻内射一区二区在线视频 | 亚洲欧洲精品成人 | 久久精品国产亚洲7777 | 亚洲精品久久久无码一区二区 | 国产女人18毛片水18精品 | 亚洲国产精品成人午夜在线观看 | 亚洲国产成人无码网站大全 | 人人妻人人澡人人爽欧美一区九九 | 国产乱a视频在线 | 中国精品毛片 | 毛片在线视频 | 免费激情视频网站 | 午夜精品久久久久久久99热黄桃 | 国产真实乱岳激情对白av | 2021精品亚洲中文字幕 | 久久人人人| 亚洲天堂在线观看视频 | 床戏做爰无遮挡摸亲胸小说 | 一级国产黄色片 | 男女无遮挡激情视频 | a√天堂资源 | 国产精品va在线播放 | 性欧美一区二区三区 | 亚洲网站免费 | 日韩国产在线播放 | 成人动漫视频在线观看 | 国产精品资源在线观看 | 日日噜噜夜夜狠狠va视频v | 91精品无人成人www | 91麻豆自制传媒国产之光 | 免费人成年激情视频在线观看 | 大奶毛片 | 日本美女毛茸茸 | 美国一级特黄 | 国产精品美女久久久 | 国产热99 | 国产无遮无挡120秒 国产无遮掩 | 五月天丁香视频 | 欧美成人午夜精品久久久 | 美国黄色毛片 | 久久久久久一区二区 | 欧美 亚洲 另类 制服 自拍 | 一级做人爱c黑人影片 | 一本一道久久综合久久 | 国产精品v欧美精品 | 精品久久ai | 欧美第一浮力影院 | 麻豆成人精品国产免费 | 色综合a怡红院怡红院 | 99在线视频播放 | 欧美情趣视频 | 波多野结衣免费视频观看 | 日本少妇一级 | 精品av国产一区二区三区 | 九九热视频在线免费观看 | 九九精品视频在线 | 性福网站| 国产精品久久久久久久久久久久久久久 | 久久久天堂国产精品女人 | 二个男人躁我疯狂吃奶视频 | 91porny九色 | 国产精品制服诱惑 | 色人阁五月天 | 8天堂资源在线 | 亚洲久视频 | 粉嫩av国产一区二区三区 | 欧美一级性生活视频 | jizzjizzjizz日本人 | 91亚洲国产成人精品性色 | 亚洲精品久久 | 嫩草在线播放 | 日本三级香港三级人妇99 | 538国产精品视频一区二区 | 狠狠躁日日躁夜夜躁2022麻豆 | 国产精品久久..4399 | 国产欧美精品一区二区三区四区 | 翘臀后进少妇大白嫩屁股91 | 亚洲精品美女久久久久网站 | 免费看黄在线网站 | youjizz.com自拍| 99在线观看免费视频 | 国产欧美一区二区三区在线看 | 丰满熟女高潮毛茸茸欧洲 | 五月激情啪啪 | 无遮挡又色又刺激的女人视频 | 亚洲日韩国产精品第一页一区 | 国产精品久久久久久在线观看 | 免费看片亚洲 | 性生交大片免费看狂欲 | 中国丰满少妇xxxxx高潮 | 精品国产乱码久久久久久88av | 国产成人精品国内自产拍免费看 | 草草免费视频 | 国产小视频免费 | 国产精品午夜无码av体验区 | 亚洲国产专区 | 久久99久久98精品免观看软件 | 想要xx·m3u8色视频 | 久久久久久亚洲精品杨幂圣光 | 最新国产三级 | 欧美一级在线免费观看 | 亚洲中文字幕无码av在线 | 国产精品永久久久久久久www | 国产精品17p| 中文字幕在线视频网站 | 91精品国产综合婷婷香蕉 | 黑人巨大精品欧美一区二区免费 | 99热这里只有精品3 99热这里只有精品4 | 另类一区二区三区 | 五月婷婷六月丁香综合 | 久激情内射婷内射蜜桃 | 亚洲色欲色欲www在线播放 | 久久久久久久亚洲精品 | 久久久久久久久久网站 | 国产精品区一区二区三 | 亚洲 欧美 日韩 综合 国产aⅴ | 亚洲精品色综合av网站 | 成熟女人毛片www免费版在线 | 亚洲精品亚洲人成在线 | 成人毛片18女人毛片 | 欧洲lv尺码大精品久久久 | 国产精品特级毛片一区二区三区 | 一本一道久久a久久精品蜜桃 | 噜噜色综合| 永久免费看mv网站入口亚洲 | 男女做性无遮挡免费视频 | 久综合网 | 黄色片网站国产 | 久久久久久久99 | 无码人妻久久久一区二区三区 | 艳妇荡乳豪妇荡乳av精东 | 午夜三级影院 | 精品国产乱码久久久久久影片 | 成人片免费视频 | 麻豆视频在线免费看 | 日韩极品视频在线观看 | 久色成人| 色综久久综合桃花网 | h片在线 | 国偷自产一区二区三区蜜臀 | 亚洲福利小视频 | 黄色一级影片 | 亚洲中文字幕无码中文字 | 毛片女人18片毛片女人免费 | 亚洲日韩av无码一区二区三区 | 免费视频中文字幕 | 亚洲欧美国产另类 | 欧美午夜精品久久久 | 朝鲜女人大白屁股ass孕交 | 日韩视频在线观看一区二区 | 狠狠色狠狠色综合日日92 | 8x成人66m免费视频 | av网站免费线看 | a∨色狠狠一区二区三区 | 日日碰久久躁77777 | 国产精品www老牛影视 | 四库影院永久国产精品 | 亚洲成av人片一区二区梦乃 | 超碰在线人人干 | 国产又色又爽又黄的视频在线观看 | 国产成人综合精品无码 | 国产日产欧产美一二三区 | 美国一级大黄一片免费中文 | 免费日韩 | 伊甸园永久入口www 伊久久 | 九色影视| 爱豆国产剧免费观看大全剧集 | 欧美男人又粗又长又大 | 全国男人天堂网 | 精品久久久久久久久久久国产字幕 | 精品国产第一区二区三区的特点 | 一个色综合导航 | 国产视频手机在线播放 | 成人精品一区二区三区视频播放 |