java 物件導向編程整理一

來源:互聯網
上載者:User

java 物件導向編程整理一

三大特點:

封裝:Encapsulation

繼承:Inheritance

多態:Polymorphism

建立對象:

Person per = null;       //聲明對象

per = new Person();   //執行個體化對象

Person  per = new Person();    //聲明+執行個體化對象

對象的屬性存放在堆記憶體之中。

對象的方法存放在代碼區之中,面向全域。

NullPointerException是java的常見錯誤,表明有空指向。

一個棧記憶體可以分配多個堆記憶體空間

如:

Person per1 = null;

Person per2 = null;

per1 = new Person();

per2 = per1;

則per2中的屬性改變後per1的內容也改變!

private是對屬性的封裝方法,他對屬性起到了保護的作用!

構造方法中不能有return 值。

聲明對象時並不會調用構造方法。

構造方法不是必須的

一個類中如果沒有明確聲明一個構造方法,則系統自動產生一個無參的什麼都不做的構造方法

如果在類中聲明了帶參數的構造方法,則系統不會再次聲明無參構造方法。

構造方法可以重載

只要構造方法的參數類型或數目不同,則可以重載。

構造器和方法在下面三個方面區別:修飾符,傳回值,命名。

       1。和方法一樣,構造器可以有任何訪問的修飾: public, protected, private或者沒有修飾(通常被package 和 friendly調用). 不同於方法的是,構造器不能有以下非訪問性質的修飾: abstract, final, native, static, 或者 synchronized。

        2。傳回型別也是非常重要的。方法能返回任何類型的值或者無傳回值(void),構造器沒有傳回值,也不需要void。
        3。兩者的命名。構造器使用和類相同的名字,而方法則不同。按照習慣,方法通常用小寫字母開始,而構造器通常用大寫字母開始。構造器通常是一個名詞,因為它和類名相同;而方法通常更接近動詞,因為它說明一個操作。

匿名對象

就是缺少了棧記憶體空間的使用來聲明對象,即直接使用new Person().tell();

類的設計分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.