java入門(3)–物件導向

來源:互聯網
上載者:User

Java 是完全面相對象的語言,這樣的好處就是能把現實世界中的事物都抽象成對象.這也符合人類的思維習慣.有利於對複雜程式的編寫.同時也說明Java中的任何成員都不能離開對象單獨存在.

 

物件導向的核心機制就是封裝,繼承,多態.

一:類與對象

類是描述一個事物的抽象概念,它描述了事物的靜態和動態屬性.

對象就是類的一個具體執行個體.

二:類的五種關係

關聯,(has a) 繼承(is a) 彙總(is one of) 組合(is a part of) 依賴(use a )

三:類的記憶體分析

Java中除了基礎資料型別 (Elementary Data Type)以外,都是參考型別,其中對象就是通過引用對其操作的.

類是靜態概念,對象是通過new出來的,位於堆(heap)中.類的每個成員變數再不同的對象中有不同的值(靜態除外).方法只有一份,執行時才佔用記憶體.

四:建構函式

使用new+建構函式建立對象.無建構函式的預設為:類名(){}

子類必須重寫父類的建構函式.子類繼承父類後預設繼承父類的建構函式,即:子類存在隱含方法:super(),如果子類重寫建構函式則子類也隱含調用super()。

 

子類可以在自己的構造方法中使用super(參數列表),調用基類的構造方法

使用this(參數列表)調用本類以外的構造方法,如果調用super,必須在構造方法的第一行寫

無顯式聲明的,預設調用基類無參數構造方法.

 

五:方法重載

類中可以定義方法名稱相同,參數個數不同,或者參數類型不同的方法.(注意傳回值不同不可以)

六:static靜態成員

static成員在第一次使用時初始化,對於該類的對象來說只存在一份.且存在在記憶體的data segment中

七:包(package)

解決了多項目中類名衝突問題

聲明包: 源檔案第一句中:package pk1.pk2.pk3…  其中.代表檔案目錄

使用包:importpk1.pk2.pk3…

注意class檔案的最上層檔案位於環境變數的:classpath下

JDK提供了大量的包

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.