Java核心技術卷_?_對象與類

来源:互联网 发布:mac系统更新安装失败 编辑:程序博客网 时间:2024/04/30 21:01

  • 面向對象程序設計概述
      • 封裝
      • 實例域
      • 方法
      • 繼承
    • 對象
      • 三個主要的特性
        • 對象的行為
        • 對象的狀態
        • 對象標誌
    • 識別類
      • 涉及面向對象時首先從設計類開始然後再往每個類中添加方法
      • 識別類的簡單規則是在分析問題的過程中尋找名詞而方法對應著動詞
    • 類之間的關係
      • 依賴uses-a
      • 應該盡可能地將相互依賴減至最少
      • 聚合
      • 繼承
  • 使用現有類
    • 對象與對象變量
      • 要使用對象就必須首先構造對象並指定其初始化狀態然後對對象施加方法
      • 構造器
        • 構造器是一種特殊的方法用來構造并初始化對象
        • 構造器的名字應該與類名相同
        • 構造一個Date對象
        • 將Date對象傳遞給println方法
        • 把對象存放到一個變量當中
    • Java類庫中的GregorianCalendar類
    • 更改器方法與訪問方法
  • 用戶自定義類
    • 最簡單的類定義形式
    • 多個源文件的使用
    • 解析Employee類
    • 從構造器開始
    • 隱式參數與顯示參數
    • 封裝的優點
    • 基於類的訪問權限
    • 私有方法
    • Final實例域
  • 靜態域與靜態方法
    • 靜態域
    • 靜態常量
    • 靜態方法
    • Factory方法
    • Main方法
  • 方法參數
  • 對象構造
    • 重載
    • 默認域初始化
    • 默認構造器
    • 顯示域初始化
    • 參數名
    • 調用另一個構造器
    • 初始化塊
    • 對象析構與finalize方法
    • 類的導入
    • 靜態導入
    • 將類放入包中
    • 包作用域
  • 類路徑
  • 文檔注釋
    • 注釋的插入
    • 類注釋
    • 方法注釋
    • 域注釋
    • 通用注釋
    • 包與概述注釋
    • 注釋的抽取
  • 類設計技巧

面向對象程序設計概述

封裝

將數據和行為組合在一個包中,並對對象的使用者隱藏了數據的實現方式。這個怎麼理解呢?最近臨近中秋,我們就舉一個蛋炒飯的例子吧,我們做一個蛋炒飯可能要用到材料:米飯一碗,雞蛋兩個,火腿腸一根,胡蘿蔔半根,蔥兩小棵,鹽適量,色拉油適量;然後在做蛋炒飯的過程要做的是:將雞蛋打散,切好各種材料,翻炒各種材料。最後呈現在我們面前的是蛋炒飯這道菜,我們吃得津津有味,但是不需要理解用了什麼材料和什麼烹飪技巧,這就是封裝要表達的意思。

實例域

對象中的數據。

方法

操縱數據的過程。

繼承

通過擴展一個類來建立另外一個類的過程。

對象

三個主要的特性

對象的行為

可以對對象施加哪些操作,或可以對對象施加哪些方法?

對象的狀態

當施加那些方法時,對象如何響應?

對象標誌

如何辨識具有相同行為與狀態的不同對象?對象的標誌是永遠不同的。

識別類

涉及面向對象時,首先從設計類開始,然後再往每個類中添加方法。

識別類的簡單規則是在分析問題的過程中尋找名詞,而方法對應著動詞。

類之間的關係

依賴(“uses-a”)

如果一個類的方法操縱另一個類的對象。

應該盡可能地將相互依賴減至最少。

聚合

類A的對象包含類B的對象。

繼承

一般而言,如果累A擴展類B,類A不但包含從類B繼承的方法,還會擁有一些額外的功能。

使用現有類

對象與對象變量

要使用對象,就必須首先構造對象,並指定其初始化狀態。然後,對對象施加方法。

構造器

構造器是一種特殊的方法,用來構造并初始化對象。

構造器的名字應該與類名相同。

構造一個Date對象:

new Date()

將Date對象傳遞給println()方法:

System.out.println(new Date());

把對象存放到一個變量當中:

Date birthday=new Date();

Java類庫中的GregorianCalendar類

更改器方法與訪問方法

用戶自定義類

最簡單的類定義形式

class ClassName{   constructor1   constructor2   //構造器   ...   method1   method2   //方法   ...   field1   field2   ...    }

多個源文件的使用

解析Employee類

  • 關鍵字public意味著任何類的任何方法都可以調用這些方法。
  • 關鍵字private只有類本身的方法能夠訪問這些實例域,而其他類的方法不能夠讀寫這些域。
  • 強烈建議將實例域標記為private。

從構造器開始

  • 構造器與類同名
  • 每個類可以有一個以上的構造器
  • 構造器可以有0個,1個或者1個以上的參數
  • 構造器沒有返回值
  • 構造器總是伴隨著new操作一起調用

隱式參數與顯示參數

封裝的優點

  • 一個私有的數據域
  • 一個公有的域訪問器方法
  • 一個公有的域更改器方法

基於類的訪問權限

私有方法

在實現一個類時,由於公有數據非常危險,所以應該將所有的數據域都設置為私有的。

Final實例域

靜態域與靜態方法

靜態域

靜態常量

靜態方法

Factory方法

Main方法

方法參數

對象構造

重載

默認域初始化

默認構造器

顯示域初始化

參數名

調用另一個構造器

初始化塊

對象析構與finalize方法

類的導入

靜態導入

將類放入包中

包作用域

類路徑

文檔注釋

注釋的插入

類注釋

方法注釋

域注釋

通用注釋

包與概述注釋

注釋的抽取

類設計技巧

原创粉丝点击