java面向對象概念1


一、java面向對象學習的三條主線:

1、java類及類的成員:屬性、方法、構造器;代碼塊、內部類

2、面向對象的三大特征:封裝性、繼承性、多態性、(抽象性)

3、其它關鍵字:thissuperstaticfinalabstractinterfaceextendpackageimport......

 

面向過程(pop)和面向對象(oop

面向對象的兩個要素:

類:對一類事物的描述,是抽象的、概念上的定義

對象:是實際存在的該類的每個個體,因而也稱為實例(instance

= 抽象概念的人 ;對象 = 實實在在的某個人

面向對象程序設計的重點是類的設計

類的設計,其實就是類的成員的設計

 

屬性:對應類中的成員變量

行為:對應類中的成員方法

 

Field = 屬性 = 成員變量 = 域、字段

Method = 行為= (成員)方法 = 函數

 

二、類和對象的使用(面向對象思想落地的實現):

1.創建類,設計類的成員

2.創建類的對象

3.通過“對象.屬性”或“對象.方法”調用對象的結構。

 

三、如果創建了一個類的多個對象,則每個對象都獨立的擁有一套類的屬性。(非static的)

    意味着:如果我們修改一個對象的屬性a,不會影響另外一個對象屬性a的值。

 

四、對象的內存解析:

 

堆(Heap):此內存區域的唯一目的就是存放對象實例,幾乎所有的對象實例都在這里分配內存。這一點在java虛擬機規范中的描述是:所有的對象實例以及數組都要在堆上分配。

:通常所說的棧(Stack),是指虛擬機棧。虛擬機棧用於存儲局部變量等。局部變量表存放了編譯期可知長度的各種基本數據類型(boolean、byte、char、short、int、float、long、double)、d對象引用(reference類型,它不等同與對象本身,是對象在堆內存的首地址)。方法執行完成,自動釋放。

方法區(Method Area),用於存儲已被虛擬機加載的類信息、常量、靜態變量、即時編譯器編譯后的代碼等數據。

 

類中屬性的使用:

屬性(成員變量) VS 局部變量

1.相同點:

    1.1定義變量的格式:數據類型 變量名 = 變量值

    1.2先聲明,后使用

    1.3變量都有其對應的作用域

2.不同點:

    2.1在類中聲明的位置的不同

    屬性:直接定義在類的一對{}內

    局部變量:聲明在方法內、方法形參、代碼塊內、構造器形參、構造器內部的變量

    2.2關於權限修飾符的不同

    屬性:可以在聲明屬性時,指明其權限,使用權限修飾符。

    常用的權限修飾符:private、public、缺省(什么都沒寫)、protected       >>>封裝性

    局部變量:不可以使用權限修飾符

    2.3默認初始化值得情況不同:

    屬性:類的屬性,根據其類型,都有默認初始化值。

        整型(byte、short、int、long):0

        浮點型(float、double):0.0

        字符型(char):0或‘\u0000’

        布爾型(boolean ):false

                             引用數據類型(類、數組、接口):null

    局部變量:沒有默認初始化值。

        意味着,我們在調用局部變量之前,一定要顯式賦值。

        特別的:形參在調用時,我們賦值即可。

    2.4在內存中加載的位置不同:

    屬性:加載到堆空間中(非static)

    局部變量:加載到棧空間中。

 

類中方法的聲明和使用:

方法:描述類應該具有的功能。

1.方法的聲明:權限修飾符 返回值類型 方法名(形參列表){

   方法體       

}注意:static、final、abstract來修飾的方法,后面隨筆再說。

2.方法的一些說明:

  2.1關於權限修飾符:默認方法的權限修飾符先都使用public

    java規定方法的4種權限修飾符:private、public、缺省、protected

  2.2返回值類型:有返回值  VS   沒有返回值

    2.2.1如果方法有返回值,則必須在方法聲明時,指定返回值的類型。同時,方法中,需要使用return關鍵字來返回指定類型的變量或常量。

    2.2.2如果方法沒有返回值,則方法聲明時,使用void來表示。通常,沒有返回值的方法中,就不使用return。但是,如果使用的話,只能“return;”表示結束此方法的意思。

  2.3方法名:屬於標識符,遵循標識符的規范和規則,“見名知意”。

  2.4參數列表:方法可以聲明0個、1個、或者多個形參。

3.方法的使用中,可以調用當前類的屬性或方法:

  特殊的:方法A中又調用了方法A我們稱為:遞歸方法。

   注意:方法中不能定義方法!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM