Objective-C編程全解(第3版)

Objective-C編程全解(第3版) pdf epub mobi txt 電子書 下載2025

出版者:人民郵電齣版社
作者:[日]荻原剛誌
出品人:
頁數:460
译者:唐 璐
出版時間:2014-12
價格:79.00元
裝幀:平裝
isbn號碼:9787115377197
叢書系列:圖靈程序設計叢書·移動開發係列
圖書標籤:
  • Objective-C
  • iOS
  • 編程
  • iOS進階
  • 計算機
  • Mac
  • 開發技術和語言
  • APP
  • Objective-C
  • 編程
  • 全解
  • 第3版
  • 蘋果
  • 開發
  • iOS
  • 語言
  • 教程
  • 基礎
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

本書結閤理論知識和實例程序,全麵而係統地介紹瞭Objective-C 編程的相關內容,包括類和繼承、對象的類型和動態綁定、基於引用計數的內存管理、垃圾迴收、屬性聲明、類NSObject 和運行時係統、Foundation 框架中常用的類、範疇、抽象類與類簇、對象的復製及存儲、塊對象、消息發送模式、圖像視圖、異常和錯誤、並行編程、鍵值編碼等。

本書適閤iOS 應用和Mac OS X 開發初學者係統入門、有經驗的開發者深入理解語言本質,也適閤開發團隊負責人、項目負責人作為綜閤性的Objective-C 參考書閱讀。

著者簡介

作者簡介:

荻原剛誌

大阪大學工學博士畢業。京都産業大學計算機理工學院教授,大阪大學客座教授。主要從事軟件開發手法、隱寫術等方麵的研究。其本人也是應用軟件開發者,代錶作品有ToyViewer、Typist等。

譯者簡介:

唐璐

碩士畢業於東北大學,2005年赴日,曾就職於東京PtoPA、東軟日本,在日期間曾參與多個iOS和人工智能的項目。現就職於阿裏巴巴無綫事業部,從事NLP方麵的研究和開發工作。

翟俊傑

畢業於吉林大學和北京郵電大學 研究方嚮為模式識彆和智能係統。先後任職於東京PtoPA、北京騰訊科技和北京搜狗科技有限公司,主要從事NLP、數據質量、數據挖掘方麵的研究和開發。

圖書目錄

第1章 麵嚮對象的編程  1
1.1 對象的概念  2
1.1.1 麵嚮功能的軟件設計的局限性  2
1.1.2 麵嚮對象的模塊化  2
1.1.3 消息傳遞  3
1.1.4 模塊的抽象化  4
1.1.5 對象的屬性  5
專欄 麵嚮對象的方方麵麵  5
1.1.6 類  6
專欄 Cocoa和Objective-C的曆史  8
1.2 模塊和對象  8
1.2.1 軟件模塊  8
1.2.2 高獨立性的模塊  9
1.2.3 模塊的信息隱蔽  9
1.2.4 類的定義和接口  10
1.2.5 消息發送的實現  10
專欄 C語言的新標準  11
第2章 Objective-C程序設計 13
2.1 對象和消息  14
2.1.1 消息錶達式  14
2.1.2 消息選擇器  15
2.1.3 實例變量的生成和初始化  16
2.2 類的定義  17
2.2.1 類的接口聲明  17
專欄 各種各樣的布爾類型  18
專欄 不指定方法的返迴值  18
2.2.2 類的實現  19
2.2.3 一個遙控器的例子  19
2.3 編譯  21
2.3.1 簡單的編譯方法  21
2.3.2 多文件編譯  23
2.4 程序的書寫風格  24
2.4.1 混閤編程  24
2.4.2 C語言函數的使用方法  25
2.4.3 靜態變量的定義  26
2.4.4 頭文件的引入  26
專欄 參考文檔和SDK  27
專欄 Xcode的安裝  28
第3章 類和繼承 29
3.1 繼承的概念  30
3.1.1 父類和子類  30
3.1.2 類的層次結構  31
3.2 利用繼承定義新類  32
3.2.1 繼承的定義  32
3.2.2 類定義和頭文件  33
3.2.3 繼承和方法調用  34
3.2.4 調用父類的方法  34
3.2.5 初始化方法的定義  35
3.3 使用繼承的程序示例  36
3.3.1 追加新方法的例子  36
3.3.2 方法重寫的例子  37
3.4 繼承和方法調用  38
3.4.1 使用self調用方法  38
3.4.2 使用super調用方法  39
3.4.3 測試程序  40
3.5 方法定義時的注意事項  41
3.5.1 局部方法  41
3.5.2 指定初始化方法  42
專欄 Objective-C與開源軟件  44
第4章 對象的類型和動態綁定 45
4.1 動態綁定  46
4.1.1 什麼是動態綁定  46
4.1.2 多態  47
4.2 作為類型的類  48
4.2.1 把類作為一種類型  48
4.2.2 空指針nil  49
專欄 關係錶達式  50
4.2.3 靜態類型檢查  51
4.2.4 靜態類型檢查的總結  53
4.3 編程中的類型定義  54
4.3.1 簽名不一緻時的情況  54
專欄 重載  55
4.3.2 類的前置聲明  56
4.3.3 強製類型轉換的使用示例  57
4.4 實例變量的數據封裝  58
4.4.1 實例變量的訪問權限  58
4.4.2 訪問器  60
4.4.3 實例變量的可見性  61
4.4.4 在實現部分中定義實例變量  62
4.5 類對象  63
4.5.1 什麼是類對象  63
4.5.2 類對象的類型  64
4.5.3 類方法的定義  65
4.5.4 類變量  65
4.5.5 類對象的初始化  66
4.5.6 初始化方法的返迴值  68
第5章 基於引用計數的內存管理 69
5.1 動態內存管理  70
5.1.1 內存管理的必要性  70
5.1.2 引用計數、自動引用計數和自動垃圾迴收  70
5.2 手動引用計數內存管理  71
5.2.1 引用計數  71
5.2.2 測試引用計數的例子  73
5.2.3 釋放對象的方法  74
5.2.4 訪問方法和對象所有權  75
專欄 靜態對象  75
5.2.5 自動釋放  76
5.2.6 使用自動釋放池時需要注意的地方  77
5.2.7 臨時對象的生成  77
5.2.8 運行迴路和自動釋放池  78
5.2.9 常量對象  78
專欄 常量修飾符const  79
5.3 分數計算器的例子  80
5.3.1 分數類Faction  80
5.3.2 保存計算結果的FracRegister類  83
5.3.3 主函數和執行示例  85
5.4 ARC概要  88
5.4.1 什麼是ARC  88
5.4.2 禁止調用引用計數的相關函數  89
5.4.3 管理自動釋放池的新語法  90
5.4.4 變量的初始值  90
5.4.5 方法族  90
5.4.6 方法dealloc的定義  92
5.4.7 使用ARC的程序的編譯  93
5.4.8 ARC的基本注意事項  94
5.4.9 使用ARC重構分數計算器  94
5.5 循環引用和弱引用  95
5.5.1 循環引用  95
5.5.2 所有權和對象間的關係  96
5.5.3 弱引用  97
5.5.4 自動nil化的弱引用  98
5.5.5 對象之間引用關係的基本原則  99
5.6 ARC編程時其他一些注意事項  100
5.6.1 可以像通常的指針一樣使用的對象  100
5.6.2 setter方法的注意事項  101
5.6.3 通過函數的參數返迴結果對象  102
5.6.4 C語言數組保存Objective-C對象  103
5.6.5 ARC對結構體的一些限製  105
5.6.6 提示編譯器進行特彆處理  106
第6章 垃圾迴收 107
6.1 垃圾迴收的概要  108
6.1.1 查找不再使用的對象  108
6.1.2 編程時的注意事項  109
6.1.3 垃圾收集器  110
6.1.4 finalize方法的定義  111
6.1.5 編譯時的設定  112
6.1.6 引用計數管理方式中方法的處理  113
6.1.7 使用垃圾迴收編程小結  114
6.2 垃圾迴收的詳細功能  114
6.2.1 分代垃圾迴收  114
6.2.2 弱引用  115
6.2.3 自動nil化  115
6.2.4 通過垃圾迴收迴收動態分配的內存  116
6.2.5 _ _strong修飾符的使用方法  117
6.2.6 NSGarbageCollector類  117
6.2.7 實時API  118
6.3 內存管理方式的比較  119
6.3.1 引用計數和垃圾迴收  119
6.3.2 更改內存管理方式  120
6.3.3 各種內存管理方式的比較  120
第7章 屬性聲明 123
7.1 屬性是什麼  124
7.1.1 使用屬性編程  124
7.1.2 屬性的概念  125
專欄 內省  125
7.2 屬性的聲明和功能  126
7.2.1 顯式聲明屬性  126
7.2.2 屬性的實現  127
7.2.3 @synthesize和實例變量  129
7.2.4 通過@synthesize生成實例變量  130
7.2.5 給屬性指定選項  131
7.2.6 賦值時的選項  132
7.2.7 原子性  134
7.2.8 屬性聲明和繼承  135
7.2.9 方法族和屬性的關係  135
7.3 通過點操作符訪問屬性  136
7.3.1 點操作符的使用方法  136
7.3.2 復雜的點操作符的使用方法  137
7.3.3 何時使用點操作符  139
第8章 類NSObject和運行時係統 141
8.1 類NSObject  142
8.1.1 根類的作用  142
8.1.2 類和實例  142
8.1.3 實例對象的生成和釋放  143
8.1.4 初始化  144
8.1.5 對象的比較  144
8.1.6 對象的內容描述  145
8.2 消息發送機製  145
8.2.1 選擇器和SEL類型  145
8.2.2 消息搜索  146
8.2.3 以函數的形式來調用方法  147
專欄 函數指針  148
8.2.4 對self進行賦值  149
8.2.5 發送消息的速度  149
8.2.6 類對象和根類  152
8.2.7 Target-action paradigm  153
8.2.8 Xcode中的動作方法和Outlet的寫法  155
8.3 Objective-C和Cocoa環境  156
8.3.1 cocoa環境和Mac OS X  156
8.3.2 Cocoa Touch和iOS  156
8.3.3 框架  157
8.3.4 框架的構成和頭文件  157
8.4 全新的運行時係統  159
8.4.1 對64位的對應和現代運行時係統  159
8.4.2 數據模型  159
8.4.3 64位模型和整數類型  159
8.4.4 Core Graphics的浮點數類型  160
8.4.5 健壯實例變量  161
專欄 條件編譯  162
第9章 Foundation框架中常用的類 163
9.1 對象的可變性  164
9.1.1 可變對象和不可變對象  164
9.1.2 可變對象的生成  165
9.2 字符串類NSString  166
9.2.1 常量字符串  166
9.2.2 NSString  167
9.2.3 NSMutableString  174
9.3 NSData  176
9.3.1 NSData  176
9.3.2 NSMutableData  178
9.4 數組類  179
9.4.1 NSArray  179
9.4.2 NSMutableArray  183
9.4.3 數組對象的所有權  184
9.4.4 快速枚舉  185
9.4.5 枚舉器NSEnumerator  186
9.4.6 快速枚舉和枚舉器  187
9.4.7 集閤類  188
9.5 詞典類  189
9.5.1 NSDictionary  191
9.5.2 NSMutableDicitionary  193
9.6 包裹類  194
9.6.1 NSNumber  194
9.6.2 NSValue  196
9.6.3 類型編碼和@encode()  196
9.6.4 NSNull  197
9.7 NSURL  198
9.7.1 關於URL  198
9.7.2 NSURL的概要  199
9.7.3 使用NSURL來訪問資源  201
第10章 範疇 203
10.1 範疇  204
10.1.1 範疇  204
10.1.2 範疇和文件的組織  205
10.1.3 作為子模塊的範疇  206
10.1.4 方法的前嚮聲明  207
10.1.5 私有方法  208
10.1.6 類擴展  209
10.1.7 範疇和屬性聲明  210
10.2 給現有類追加範疇  211
10.2.1 追加新的方法  211
10.2.2 追加方法的例子  212
專欄 可變參數的方法的定義  213
10.2.3 覆蓋已有的方法  214
10.3 關聯引用  215
10.3.1 關聯引用的概念  215
10.3.2 添加和檢索關聯  215
10.3.3 對象的存儲方法  216
10.3.4 斷開關聯  217
10.3.5 利用範疇的例子  217
第11章 抽象類和類簇 221
11.1 抽象類  222
11.1.1 什麼是抽象類  222
11.1.2 抽象類的例子  223
11.2 類簇  228
11.2.1 類簇的概念  228
11.2.2 測試程序  229
11.2.3 編程中的注意事項  230
11.3 生成類簇的子類  231
11.3.1 使用範疇  231
11.3.2 基本方法的重定義  231
11.3.3 生成字符串的子類  233
第12章 協議  235
12.1 協議的概念  236
12.1.1 什麼是協議  236
12.1.2 對象的協議  236
12.2 Objective-C中協議的聲明  238
12.2.1 協議的聲明  238
12.2.2 協議的采用  239
12.2.3 協議的繼承  240
12.2.4 指定協議的類型聲明  240
12.2.5 協議的前置聲明  241
12.2.6 協議適用性檢查  241
12.2.7 必選功能和可選功能  242
12.2.8 使用協議的程序示例  242
專欄 類的多重繼承  245
12.3 非正式協議  246
12.3.1 什麼是非正式協議  246
12.3.2 非正式協議的用途  246
專欄 使用宏(macro)來區分係統版本的差異  247
第13章 對象的復製及存儲  249
13.1 對象的復製  250
13.1.1 淺復製和深復製  250
13.1.2 區域  251
13.1.3 復製方法的定義  251
13.1.4 復製方法的例子  252
13.1.5 實現可變復製  254
13.2 歸檔  255
13.2.1 對象的歸檔  255
13.2.2 Foundation框架的歸檔功能  255
13.2.3 歸檔方法的定義  256
13.2.4 歸檔的方法定義  257
13.2.5 歸檔和解檔的初始化方法  258
13.3 屬性錶  259
13.3.1 屬性錶概況  259
13.3.2 ASCII碼格式屬性錶  260
13.3.3 XML格式屬性錶  261
13.3.4 屬性錶的變換和檢查  261
第14章 塊對象 263
14.1 什麼是塊對象  264
14.1.1 C編譯器和GCD  264
14.1.2 塊對象的定義  264
14.1.3 塊對象和類型聲明  266
14.1.4 塊對象中的變量行為  267
14.1.5 排序函數和塊對象  269
14.2 塊對象的構成  271
14.2.1 塊對象的實例和生命周期  271
14.2.2 應該避免的編碼模式  273
14.2.3 塊對象的復製  273
14.2.4 指定特殊變量_ _block  274
14.3 Objective-C和塊對象  276
14.3.1 方法定義和塊對象  276
14.3.2 作為Objective-C對象的塊對象  276
14.3.3 ARC和塊對象  277
14.3.4 對象內變量的行為  277
14.3.5 集閤類中添加的方法  279
14.3.6 在窗體中使用塊對象  280
14.3.7 ARC中使用塊對象時的注意事項  281
第15章 消息發送模式 283
15.1 應用和運行迴路  284
15.1.1 運行迴路  284
15.1.2 定時器對象  285
15.1.3 消息的延遲執行  286
15.2 委托  286
15.2.1 委托的概念  286
15.2.2 Cocoa環境中的委托  287
15.2.3 委托的設置和協議  288
15.2.4 使用委托的程序  289
15.3 通知  289
15.3.1 通知和通知中心的概念  289
15.3.2 通知對象  290
15.3.3 通知中心  291
15.3.4 通知隊列  293
專欄 通知名或異常名的定義  294
15.4 反應鏈  294
15.4.1 反應鏈概述  294
15.4.2 應用中的反應鏈  295
15.5 消息轉送  296
15.5.1 消息轉送的構成  296
15.5.2 消息轉送需要的信息  296
15.5.3 消息轉送的定義  297
15.5.4 禁止使用消息  298
15.5.5 程序示例  298
15.6 撤銷構造  300
15.6.1 撤銷構造的概念  300
15.6.2 在撤銷管理器中記錄操作  301
第16章 應用的構造 303
16.1 應用束  304
16.1.1 應用束的構造  304
16.1.2 nib文件和各語言資源  305
專欄 指定語言和地區  305
16.1.3 信息文件的主要內容  306
16.1.4 通過NSBundle訪問資源  308
16.1.5 iOS中資源的訪問  310
16.1.6 通用二進製  311
16.2 加載nib文件  312
16.2.1 nib文件實例化  312
16.2.2 在Mac OS X中加載nib文件  313
16.2.3 在iOS中加載nib文件  313
16.2.4 nib文件內的包含循環  314
16.2.5 nib文件內對象的初始化  314
16.2.6 啓動應用  314
16.3 iOS的文件保存場所  316
16.3.1 主要目錄及功能  316
16.3.2 獲取目錄路徑  317
16.4 用戶默認  317
16.4.1 保存設定值  317
16.4.2 默認域  318
16.4.3 查找用戶默認的工具  319
16.4.4 NSUserDefaults概要  319
16.5 應用的本地化  321
16.5.1 消息的本地化  321
16.5.2 本地化指針  322
專欄 本地化應用名  323
16.5.3 本地化  323
專欄 消息內的語序  324
16.6 模塊的動態加載  324
16.6.1 可加載束  325
16.6.2 使用可加載束的程序  325
16.6.3 插件概述  326
專欄 沙盒(App Sandbox)  327
第17章 實例:簡單圖像視圖 329
17.1 Application框架和Interface Builder  330
17.2 程序概況  330
17.2.1 對象間的關係  330
17.2.2 通知  331
17.2.3 撤銷和重做  332
17.2.4 可加載束和本地化  332
17.2.5 用戶默認  332
17.3 編程介紹  333
17.3.1 main函數和MyViewerCtrl類  333
17.3.2 類WinCtr  336
17.3.3 類MyInspector  341
17.4 應用束的組織  345
17.4.1 創建編譯和設置文件  345
17.4.2 程序運行例子  346
17.4.3 GUI定義文件和程序  347
專欄 Objective-C調試器的功能  349
第18章 異常和錯誤 351
18.1 異常  352
18.1.1 異常處理的概念  352
18.1.2 Objective-C中的異常處理  352
18.2 異常處理機製概述  353
18.2.1 異常句柄和異常處理域  353
18.2.2 異常錶示類NSException  353
18.2.3 異常處理機製的語法  354
18.2.4 簡單的異常處理的示例程序  355
專欄 日誌輸齣函數NSLog()  356
18.3 異常的發生和傳播   357
18.3.1 異常的傳播  357
18.3.2 自己觸發異常  357
18.3.3 用 @throw語法産生異常  357
18.3.4 @catch 的特殊語法   358
18.3.5 異常傳播和 @finally   358
18.3.6 異常處理程序的注意點  359
18.4 斷言  360
18.4.1 斷言是什麼  360
18.4.2 斷言宏  361
專欄 包含可變個數的參數的宏  361
18.5 錯誤處理  362
18.5.1 錯誤處理結構的目的  362
18.5.2 錶示錯誤的類 NSError的使用方法  362
18.5.3 獲取錯誤對象的信息  364
18.5.4 生成自定義錯誤對象  364
18.6 錯誤反應鏈  366
18.6.1 錯誤反應鏈的結構  366
18.6.2 錯誤對象的更改和恢復  367
專欄 單元測試  369
第 19章 並行編程 371
19.1 多綫程  372
19.1.1 綫程的基本概念  372
19.1.2 綫程安全  372
19.1.3 注意點  373
19.1.4 使用 NSThread創建綫程  373
19.1.5 當前綫程  374
19.1.6 GUI應用和綫程  374
19.2 互斥  375
19.2.1 需要互斥的例子  375
19.2.2 鎖  376
19.2.3 死鎖  377
19.2.4 嘗試獲得鎖  378
19.2.5 條件鎖  378
19.2.6 NSRecursiveLock  379
19.2.7 @synchronized  379
19.3 操作對象和並行處理  380
19.3.1 新的並行處理程序  380
19.3.2 使用NSOperation的處理概述  381
19.3.3 NSOperation和NSOperationQueue的簡單用法  382
19.3.4 等待至聚閤任務終止  383
19.3.5 使用操作對象的簡單例子  383
19.3.6 NSInvocationOperation的使用方法  385
19.3.7 NSBlockOperation 的使用方法  385
19.3.8 NSBlockOperation中添加多個塊對象  386
19.3.9 設置任務間的依賴  386
19.3.10 任務的優先級設置  388
19.3.11 設定最大並行任務數  388
19.3.12 終止任務  389
19.3.13 設置隊列調度為中斷狀態  389
19.4 並行處理的示例程序  390
19.4.1 程序概要  390
19.4.2 類BrowsingViewerCtrl  390
19.4.3 類BrowsingWinCtrl  392
19.4.4 類DrawOperation  394
19.4.5 其他改變  396
19.5 使用連接的通信  397
19.5.1 連接  398
19.5.2 代理  398
19.5.3 方法的指針參數  399
19.5.4 對象的副本傳遞  400
19.5.5 異步通信  401
19.5.6 設置協議  401
19.5.7 運行迴路的開始  402
19.5.8 收發消息時的處理  402
19.5.9 綫程間連接  404
19.5.10 進程間連接  406
19.5.11 進程間連接的例子  407
第20章 鍵值編碼 411
20.1 鍵值編碼概況  412
20.1.1 什麼是鍵值編碼  412
20.1.2 鍵值編碼的基本處理  412
20.2 訪問屬性  414
20.2.1 鍵值編碼的方法的行為  414
20.2.2 屬性值的自動轉換  415
20.2.3 字典對象和鍵值編碼  416
20.2.4 根據鍵路徑進行訪問  416
20.2.5 一對一關係和一對多關係  417
20.2.6 數組對象和鍵值編碼  419
20.3 一對多關係的訪問  420
20.3.1 帶索引的訪問器模式  420
20.3.2 一對多關係的可變訪問  421
20.4 KVC標準  422
20.4.1 驗證屬性值  422
20.4.2 鍵值編碼的準則  423
20.5 鍵值觀察  424
20.5.1 鍵值觀察的基礎  424
20.5.2 示例程序  426
20.5.3 一對多關係的屬性監視  429
20.5.4 依賴鍵的登記  429
20.6 Cocoa綁定概述  430
20.6.1 目標-行為-模式的弱點  430
20.6.2 什麼是Cocoa綁定  430
20.6.3 Cocoa綁定所需的方法  431
20.6.4 例題:繪製二次函數圖的軟件  432
20.6.5 自定義視圖的方法定義  434
· · · · · · (收起)

讀後感

評分

不适合入门,最好是对Objective-C 理解一点,敲过一阵子代码(大概1,2个月之后吧)用这本书加强,还有使自己更清晰对各种概念。而且很多面试题都逃不出这本书!当然书中的深度挖掘肯定是还需要自己去搜索一些关键的资料。  

評分

这本书是昨天从朋友那借来的,说实话我对iOS国内技术书籍已经失去了细心(一朝被蛇咬)。但我看到作者是日本的而且朋友也说写的相当严谨之后,马上拿回来看了。除了垃圾回收、属性声明几章没看,其他的我都仔细过了一遍。该深入的地方写的比较深,但也有部分地方一笔带过。消息...  

評分

书的组织结构还是挺不错的,但是不知道是不是日本人都这么写技术书,感觉内容上写的不是很好,该有清晰示例的地方没有,好多时候都是文字描述一概而过,还有的地方只是单纯一句代码没有上下文,根本不知道这代码应该用在哪里。或许是我对oc的了解还太浅显,或者c的基础过于薄弱...

評分

这本书是昨天从朋友那借来的,说实话我对iOS国内技术书籍已经失去了细心(一朝被蛇咬)。但我看到作者是日本的而且朋友也说写的相当严谨之后,马上拿回来看了。除了垃圾回收、属性声明几章没看,其他的我都仔细过了一遍。该深入的地方写的比较深,但也有部分地方一笔带过。消息...  

評分

书的组织结构还是挺不错的,但是不知道是不是日本人都这么写技术书,感觉内容上写的不是很好,该有清晰示例的地方没有,好多时候都是文字描述一概而过,还有的地方只是单纯一句代码没有上下文,根本不知道这代码应该用在哪里。或许是我对oc的了解还太浅显,或者c的基础过于薄弱...

用戶評價

评分

前陣子突然很喜歡日本人寫的技術書,於是買瞭這本,花瞭三個月斷斷續續看完,感覺自己OC基礎真是差勁。但讀完大部頭真是爽,感恩浦圖????

评分

適閤初學者

评分

比較全,也比較詳盡,但讀一遍是不夠的,比如,我讀到最後一章的時候,類簇的概念又忘瞭……

评分

知識麵覆蓋的很廣, 講解的不夠透徹, 翻譯的比較差, 很多語句根本就不通順.

评分

搞多本溫習下

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有