成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Java 面向?qū)ο? 類 對(duì)象 方法 變量 封裝

huangjinnan / 1966人閱讀

摘要:因?yàn)橥ǔ0巡皇褂眯揎椀某蓡T變量和方法也稱為實(shí)例變量實(shí)例方法。形參個(gè)數(shù)可變的方法允許定義形參個(gè)數(shù)可變的參數(shù),從而允許為方法指定數(shù)量不確定的形參。方法返回值類型修飾符等,與方法重載沒有任何關(guān)系。

類和對(duì)象 定義類

面向?qū)ο蟮某绦蛟O(shè)計(jì)過程中有兩個(gè)重要概念:類(class)和對(duì)象(object,也被稱為實(shí)例,instance),其中類是某一批對(duì)象的抽象,可以把類理解成某種概念;對(duì)象才是一個(gè)具體存在的實(shí)體。

[修飾符]    class    類名
{
    零個(gè)到多個(gè)構(gòu)造器定義...
    零個(gè)到多個(gè)成員變量...
    零個(gè)到多個(gè)方法...
}

修飾符可以是public、final、abstract或者完全忽略。

如果從程序的可讀性方面來看,Java類名必須由一個(gè)或多個(gè)有意義的單詞連綴而成的,每個(gè)單詞首字母大寫,其他字母全部小寫,單詞與單詞之間不要使用任何分隔符。

構(gòu)造器是一個(gè)類創(chuàng)建對(duì)象的根本途徑,如果一個(gè)類沒有構(gòu)造器,這個(gè)類通常無法創(chuàng)建實(shí)例。如果程序員沒有為一個(gè)類編寫構(gòu)造器,則系統(tǒng)會(huì)為該類提供一個(gè)默認(rèn)的構(gòu)造器。一旦程序員為一個(gè)類提供了構(gòu)造器,系統(tǒng)將不再為該類提供構(gòu)造器。

定義成員變量

static修飾的成員不能訪問沒有static修飾的成員。

成員變量用于定義該類或該類的實(shí)例所包含的狀態(tài)數(shù)據(jù),方法則用于定義該類或該類的實(shí)例的行為特征或者功能實(shí)現(xiàn)。構(gòu)造器用于構(gòu)造該類的實(shí)例,Java語言通過new關(guān)鍵字來調(diào)用構(gòu)造器,從而返回該類的實(shí)例。

[修飾符]    類型    成員變量名 [=默認(rèn)值]

修飾符:public、protected、private三個(gè)最多只能出現(xiàn)其中之一,可以與static、final組合起來修飾成員變量。

類型:基本類型和引用類型

成員變量名:如果從程序的可讀性方面來看,Java類名必須由一個(gè)或多個(gè)有意義的單詞連綴而成的,第一個(gè)單詞首字母小寫,后面每個(gè)單詞首字母大寫,其他字母全部小寫,單詞與單詞之間不要使用任何分隔符。

默認(rèn)值:定義成員變量還可以指定一個(gè)可選的默認(rèn)值。

定義方法
[修飾符]    方法返回值類型    方法名(形參列表)
{
    //由零條到多條可執(zhí)行性語句組成的方法體
}

修飾符:public、protected、private三個(gè)最多只能出現(xiàn)其中之一,可以與static、final組合起來修飾成員變量。

方法返回值類型:基本類型和引用類型如果聲明了方法返回值類型,則方法體內(nèi)必須與此處聲明的類型匹配。如果一個(gè)方法沒有返回值,則必須使用void來聲明沒有返回值。

形參列表:形參列表用于定義該方法可以接受的參數(shù),形參列表由零組到多組“參數(shù)類型 形參名”組合而成,多組參數(shù)之間以英文逗號(hào)(,)隔開,形參類型和形參名之間以英文空格隔開。

static

static是一個(gè)特殊的關(guān)鍵字,可用于修飾方法、成員變量等成員。static修飾的成員表明它屬于這個(gè)類本身,而不屬于該類的單個(gè)實(shí)例,因?yàn)橥ǔ0裺tatic修飾的成員變量和方法也稱為類變量、類方法。不使用static修飾的普通方法、成員變量則屬于該類的單個(gè)實(shí)例,而不屬于該類。因?yàn)橥ǔ0巡皇褂胹tatic修飾的成員變量和方法也稱為實(shí)例變量、實(shí)例方法。

static修飾的成員變量和方法稱為靜態(tài)變量和靜態(tài)方法,把不使用static修飾的成員變量和方法稱為非靜態(tài)變量和非靜態(tài)方法。靜態(tài)方法不能直接訪問非靜態(tài)成員。

有static修飾的成員屬于類本身,沒有static修飾的成員屬于該類的實(shí)例。

構(gòu)造器

構(gòu)造器是一個(gè)特殊的方法,定義構(gòu)造器的語法格式與定義方法的語法格式很像,定義構(gòu)造器的語法格式如下:

[修飾符]    構(gòu)造器名(形參列表)
{
    //由零條到多條可執(zhí)行性語句組成的構(gòu)造器執(zhí)行體
}

修飾符:public、protected、private
構(gòu)造器名:構(gòu)造器名必須和類同名
形參列表:和定義方法形參列表的格式完全相同。
構(gòu)造器既不能定義返回值類型,也不能使用void聲明構(gòu)造器沒有返回值。

對(duì)象的產(chǎn)生和使用

static修飾的方法和成員變量,既可通過類來調(diào)用,也可通過實(shí)例來調(diào)用;沒有使用static修飾的普通方法和成員變量,只可通過實(shí)例來調(diào)用。

對(duì)象、引用和指針

變量實(shí)例實(shí)際上是一個(gè)引用,它被存放在棧內(nèi)存里,指向?qū)嶋H的類對(duì)象;而真正的類對(duì)象則存放在堆內(nèi)存中。棧內(nèi)存里的引用變量并未真正存儲(chǔ)對(duì)象的成員變量,對(duì)象的成員變量數(shù)據(jù)實(shí)際存放在堆內(nèi)存里;而引用變量只是指向該堆內(nèi)存里的對(duì)象。

對(duì)象的this引用

this關(guān)鍵字總是指向調(diào)用該方法的對(duì)象。根據(jù)this出現(xiàn)位置的不同,this作為對(duì)象的默認(rèn)引用有兩種情形。

構(gòu)造器中引用該構(gòu)造器正在初始化的對(duì)象。

在方法中引用調(diào)用該方法的對(duì)象。

對(duì)于static修飾的方法而言,則可以使用類來直接調(diào)用該方法,如果在static修飾的方法中使用this關(guān)鍵字,則這個(gè)關(guān)鍵字就無法指向合適的對(duì)象。所以,static修飾的方法中不能使用this引用。由于static修飾的方法不能使用this引用,所以static修飾的方法不能訪問不使用static修飾的普通成員,因此Java語法規(guī)定:靜態(tài)成員不能直接訪問非靜態(tài)成員。

普通方法訪問其他方法、成員變量時(shí)無須使用this前綴,但如果方法里有個(gè)局部變量和成員變量同名,但程序又需要在該方法里訪問這個(gè)被覆蓋的成員變量,則必須使用this前綴。this引用也可以用于構(gòu)造器中作為默認(rèn)引用,由于構(gòu)造器是直接使用new關(guān)鍵字來調(diào)用,而不是使用對(duì)象來調(diào)用的,所以this在構(gòu)造器中代表該構(gòu)造器正在初始化的對(duì)象。

方法詳解 方法的所屬性

Java語言里方法的所屬性主要體現(xiàn)在如下幾個(gè)方面:

方法不能獨(dú)立完成,方法只能在類體里定義。

從邏輯意義上來看,方法要么屬于該類本身,要么屬于該類的一個(gè)對(duì)象。

永遠(yuǎn)不能獨(dú)立執(zhí)行方法,執(zhí)行方法必須使用類或?qū)ο笞鳛檎{(diào)用者。

同一個(gè)類的一個(gè)方法調(diào)用另一個(gè)方法時(shí),如果被調(diào)用方法是普通方法,則默認(rèn)使用this作為調(diào)用者;如果被調(diào)方法是靜態(tài)方法,則默認(rèn)方法類作為調(diào)用者。

方法的參數(shù)傳遞機(jī)制

聲明方法時(shí)包含了形參聲明,則調(diào)用方法時(shí)必須給這些形參指定參數(shù)值,調(diào)用方法時(shí)實(shí)際傳給形參的參數(shù)值也被稱為實(shí)參。

形參個(gè)數(shù)可變的方法

Java允許定義形參個(gè)數(shù)可變的參數(shù),從而允許為方法指定數(shù)量不確定的形參。如果在定義方法時(shí),在最后一個(gè)形參的類型后增加三點(diǎn)(...),則表明該形參可以接受多個(gè)參數(shù)值,多個(gè)參數(shù)值被當(dāng)成數(shù)組傳入。

public statci void test(int a, String ... books)

數(shù)組形式的形參可以處于形參列表的任意位置,但個(gè)數(shù)可變的形參只能處于形參列表的最后。也就是說一個(gè)方法中最多只能有一個(gè)長(zhǎng)度可變的形參。

遞歸方法

一個(gè)方法體內(nèi)調(diào)用它自身,被稱為方法遞歸。方法遞歸包含了一種隱式的循環(huán),它會(huì)重復(fù)執(zhí)行某段代碼,但這種重復(fù)執(zhí)行無限循環(huán)控制。

希望遍歷某個(gè)路徑下的所有文件,但這個(gè)路徑下文件夾的深度是未知的,那么就可以使用遞歸來實(shí)現(xiàn)這個(gè)需求。系統(tǒng)可定義一個(gè)方法,該方法接受一個(gè)文件路徑作為參數(shù),該方法可遍歷當(dāng)前路徑下的所有文件和文件路徑——該方法中再次調(diào)用該方法本身來處理該路徑下的所有文件路徑。

方法重載

Java允許同一個(gè)類里定義多個(gè)同名方法,只有形參列表不同就行。如果同一個(gè)類中包含了兩個(gè)或兩個(gè)以上方法的方法名相同,但形參列表不同,則被稱為方法重載。

方法重載三個(gè)因素:

調(diào)用者,也就是方法的所屬者,既可以是類,也可以是對(duì)象。

方法名,方法的標(biāo)識(shí)。

形參列表,當(dāng)調(diào)用方法時(shí),系統(tǒng)將會(huì)根據(jù)傳入的實(shí)參列表匹配。

兩同一不同:同一個(gè)類中方法名相同,參數(shù)列表不同。方法返回值類型、修飾符等,與方法重載沒有任何關(guān)系。

成員變量和局部變量 成員變量

成員變量指的是類里定義的變量,也就是前面所介紹的field;局部變量指的是方法里定義的變量。

成員變量:一個(gè)類不能定義兩個(gè)同名的成員變量。

static修飾的類變量。類變量從該類的準(zhǔn)備階段起開始存在,直到系統(tǒng)完全銷毀這個(gè)類,類變量的作用域與這個(gè)類的生存范圍相同;而實(shí)例變量則從該類的實(shí)例被創(chuàng)建起開始存在,直到系統(tǒng)完全銷毀這個(gè)實(shí)例,實(shí)例變量的作用域與對(duì)應(yīng)實(shí)例的生存范圍相同。

成員變量無須顯式初始化,只要為一個(gè)類定義了類變量或?qū)嵗兞浚到y(tǒng)就會(huì)在這個(gè)類的準(zhǔn)備階段或創(chuàng)建該類的實(shí)例時(shí)進(jìn)行默認(rèn)初始化,成員變量默認(rèn)初始化時(shí)的賦值規(guī)則與數(shù)組動(dòng)態(tài)初始化時(shí)數(shù)組元素的賦值規(guī)則完全相同。

局部變量:一個(gè)方法里不能定義兩個(gè)同名的方法局部變量,方法局部變量與形參也不能同名;同一個(gè)方法中不同代碼塊內(nèi)的代碼塊局部變量可以同名;如果先定義代碼塊局部變量,后定義方法局部變量,前面定義的代碼塊局部變量與后面定義的方法局部變量也可以同名。

形參(方法簽名中定義的變量) 作用域在整個(gè)方法內(nèi)有效 必須顯式初始化

方法局部變量(在方法內(nèi)定義) 作用域從定義該變量的地方生效,到該方法結(jié)束時(shí)失效 必須顯式初始化

代碼塊局部變量(在代碼塊內(nèi)定義) 作用域從定義該變量的地方生效,到該代碼塊結(jié)束時(shí)失效 無須顯式初始化

Java允許局部變量和成員變量同名,如果方法里的局部變量和成員變量同名,局部變量會(huì)覆蓋成員變量,如果需要在這個(gè)方法里引用被覆蓋的成員變量,則可使用this(對(duì)于實(shí)例變量)或類名(對(duì)于類變量)作為調(diào)用者來限定訪問成員變量。

成員變量的初始化和內(nèi)存中的運(yùn)行機(jī)制

當(dāng)系統(tǒng)加載類或創(chuàng)建該類的實(shí)例時(shí),系統(tǒng)自動(dòng)為成員變量分配內(nèi)存空間,并在分配內(nèi)存空間后,自動(dòng)為成員變量指定初始值。

局部變量的初始化和內(nèi)存中的運(yùn)行機(jī)制

局部變量定義后,必須經(jīng)過顯式初始化后才能使用,系統(tǒng)不會(huì)為局部變量執(zhí)行初始化。這意味著定義局部變量后,系統(tǒng)并未為這個(gè)變量分配內(nèi)存空間,直到等到程序?yàn)檫@個(gè)變量賦初始值時(shí),系統(tǒng)才會(huì)為局部變量分配內(nèi)存,并將初始值保存到這塊內(nèi)存中。

變量的使用規(guī)則

定義一個(gè)成員變量時(shí),成員變量將被放置到堆內(nèi)存中,成員變量的作用域?qū)U(kuò)大到類存在范圍或者對(duì)象存在范圍,這種范圍的擴(kuò)大有兩個(gè)害處。

增大了變量的生存時(shí)間,這將導(dǎo)致更大的內(nèi)存開銷。

擴(kuò)大了變量的作用域,這不利于提供程序的內(nèi)聚性。

應(yīng)該考慮使用成員變量的情況:

如果需要定義的變量是用于描述某個(gè)類或某個(gè)對(duì)象的固有信息。

如果在某個(gè)類中需要以一個(gè)變量來保存該類或者實(shí)例運(yùn)行時(shí)的狀態(tài)信息。

如果某個(gè)信息需要在某個(gè)類的多個(gè)方法之間進(jìn)行共享,則這個(gè)信息應(yīng)該使用成員變量來保存。

即使在程序中使用局部變量,也應(yīng)該盡可能地縮小局部變量的作用范圍,局部變量的作用范圍越小,它在內(nèi)存里停留的時(shí)間就越短,程序運(yùn)行性能就越好。因此,能用代碼塊局部變量的地方,就堅(jiān)決不要使用方法局部變量。

隱藏和封裝 理解封裝

封裝指的是將對(duì)象的狀態(tài)信息隱藏在對(duì)象內(nèi)部,不允許外部程序直接訪問對(duì)象內(nèi)部信息,二世通過該類所提供的方法來實(shí)現(xiàn)對(duì)內(nèi)部信息的操作和訪問。

對(duì)一個(gè)類或?qū)ο髮?shí)現(xiàn)良好的封裝,可以實(shí)現(xiàn)以下目的。
隱藏類的實(shí)現(xiàn)細(xì)節(jié)

讓使用者只能通過事先預(yù)定的方法來訪問數(shù)據(jù),從而可以在該方法里加入控制邏輯,限制對(duì)成員變量的不合理訪問。

可進(jìn)行數(shù)據(jù)檢查,從而有利于保證對(duì)象信息的完整性。

便于修改,提高代碼的可維護(hù)性。

為了實(shí)現(xiàn)良好的封裝,需要從兩個(gè)方面考慮:

將對(duì)象的成員變量和實(shí)現(xiàn)細(xì)節(jié)隱藏起來,不允許外部直接訪問。

把方法暴露出來,讓方法來控制對(duì)這些成員變量進(jìn)行安全的訪問和操作。

使用訪問控制符

private → default → protected → public
訪問控制級(jí)別由小到大

private(當(dāng)前類訪問權(quán)限):使用它來修飾成員變量就可以把成員變量隱藏在該類的內(nèi)部。

default(包訪問權(quán)限):defaulte訪問控制的成員或外部類可以被相同包下的其他類訪問。

protected(子類訪問權(quán)限):成員既可以被同一包中的其他類訪問,也可以被不同包中的子類訪問。通常,如果使用protected來修飾一個(gè)方法,是希望其子類來重寫這個(gè)方法。

public(公共訪問權(quán)限):成員或外部類可以被所以類訪問,不管訪問類和被訪問類是否處于同一包中,是否具有父子繼承關(guān)系。

             private    default    protected    public
 同一個(gè)類中      √          √           √          √
 同一個(gè)包中                 √           √          √
 子類中                                 √          √
 全局范圍內(nèi)                                        √

外部類只能有兩種訪問控制級(jí)別:public和default,外部類不能用private和protected修飾,因?yàn)橥獠款悰]有處于任何類內(nèi)部,也就沒有其所在類的內(nèi)部、所在類的子類的兩個(gè)范圍。

如果一個(gè)Java類的每個(gè)實(shí)例變量都被使用private修飾,并為每個(gè)實(shí)例變量都提供了public修飾setter和getter方法,那么這個(gè)類就是一個(gè)符號(hào)JavaBean規(guī)范的類。因此,JavaBean總是一個(gè)封裝良好的類。

進(jìn)行程序設(shè)計(jì)時(shí),應(yīng)盡量避免一個(gè)模塊直接操作和訪問另一個(gè)模塊的數(shù)據(jù),模塊設(shè)計(jì)追求高內(nèi)聚(盡可能把模塊的內(nèi)部數(shù)據(jù)、功能實(shí)現(xiàn)細(xì)節(jié)隱藏在模塊內(nèi)部獨(dú)立完成,不允許外部直接干預(yù))、低耦合(僅暴露少量的方法給外部使用)。

訪問控制符的使用的基本原則:

類里的絕大部分成員變量都應(yīng)該使用private,只有一些static修飾的、類似全局變量的成員變量,才可能考慮使用public修飾。除此之外,有些方法只用于輔助實(shí)現(xiàn)該類的其他方法,這些方法被稱為工具方法,工具方法也應(yīng)該使用private修飾。

如果某個(gè)類主要用作其他類的父類,該類里包含的大部分方法可能僅希望被其子類重寫,而不想被外界直接調(diào)用,則應(yīng)該使用protected修飾這些方法。

希望暴露出來給其他類自由調(diào)用的方法應(yīng)該使用public修飾。因此,類的構(gòu)造器通過public修飾,從而允許在其他地方創(chuàng)建該類的實(shí)例。因?yàn)橥獠款愅ǔ6枷M黄渌愖杂墒褂?,所以大部分外部類都使用public修飾。

package、import和import static

如果希望把一個(gè)類放到指定的包結(jié)構(gòu)下,應(yīng)該在Java源程序的第一個(gè)非注釋行放置如下格式的代碼:

package packageName;

一旦在Java源文件中使用了這個(gè)package語句,就意味著該源文件里定義的所有類都屬于這個(gè)包。位于包中的每個(gè)類的完整類名都應(yīng)該是包名和類名的組合,如果其他人需要使用該包下的類,也應(yīng)該使用包名加類名的組合。

同一個(gè)包中的類不必位于相同的目錄下,例如有l(wèi)eePerson和LeePersonTest兩個(gè)類,它們完全可以一個(gè)位于C盤下某個(gè)位置,一個(gè)位于D盤下某個(gè)位置,只要讓CLASSPATH環(huán)境變量里包含這兩個(gè)路徑即可。虛擬機(jī)會(huì)自動(dòng)搜索CLASSPATH下的子路徑,把它們當(dāng)成同一個(gè)包下的類來處理。也應(yīng)該把Java源文件放在與包名一致的目錄結(jié)構(gòu)下。通常建議將源文件和class文件分開存放,以便管理。

從可讀性規(guī)范角度來看,包名應(yīng)該全部是小寫字母,而且應(yīng)該由一個(gè)或多個(gè)有意義的單詞連綴而成。

package語句必須作為源文件的第一條非注釋性語句,一個(gè)源文件只能指定一個(gè)包,即只能包含一條package語句,該源文件中可以定義多個(gè)類,則這些類將全部位于該包下。如果沒有顯式指定package語言,則處于默認(rèn)包下。

同一個(gè)包下的類可以自由訪問,無須添加包前綴。

父包和子包之間確實(shí)表示了某種內(nèi)在的邏輯關(guān)系。但父包和子包在用法上不存在任何關(guān)系,如果父包中的類需要使用子包中的類,則必須使用子包的全名,而不能省略父包部分。

//調(diào)用構(gòu)造器時(shí)需要在構(gòu)造器前添加包前綴
lee.sub.Apple a  = new lee.sub.Apple();
import關(guān)鍵字

import可以向某個(gè)Java文件中導(dǎo)入指定包層次下某個(gè)類或全部類,import語句應(yīng)該出現(xiàn)在package語句之后(如果有)、類定義之前。一個(gè)Java源文件只能包含一個(gè)package語句,但可以包含多個(gè)import語句,多個(gè)import語句用于導(dǎo)入多個(gè)包層次下的類。java.lang包下的所有類默認(rèn)導(dǎo)入。

//使用import語句導(dǎo)入單個(gè)類
import    package.subpackage...ClassName;
//使用import語句導(dǎo)入指定包下全部
import    package.subpackage.*

星號(hào)()只能代表類,不能代表包。因此使用import.lee.;語句時(shí),它表明導(dǎo)入lee包下的所有類,而lee包下sub子包內(nèi)的類則不會(huì)被導(dǎo)入。如需導(dǎo)入lee.sub.Apple類,則可以使用impor.lee.sub.*;語句來導(dǎo)入lee.sub包下的所有類。

一旦在Java源文件中使用import語句來導(dǎo)入指定類,在該源文件中使用這些類時(shí)就可以省略包前綴,不再需要使用類全名。

靜態(tài)導(dǎo)入import static

import static package.subpackage..ClassName.fieldName|methodName;
field:靜態(tài)成員變量;methodName:靜態(tài)方法。
使用import可以省略寫包名;使用import static則可以連類名都省略。

Java源文件的大致結(jié)構(gòu):

package語句                                                    //0個(gè)或1個(gè),必須放在文件開始
import | import static 語句                                    //0個(gè)或多個(gè),必須放在所有類定義之前
public classDefinition | interfaceDefinition | enumDefinition  //0個(gè)或1個(gè)public類、接口或枚舉定義
classDefinition | interfaceDefinition | enumDefinition         //0個(gè)或多個(gè)普通類、接口或枚舉定義
Java的常用包
Java.lang:核心類,如String、Math、System和thread類等,使用這個(gè)包下的類無須使用import語句導(dǎo)入,系統(tǒng)會(huì)自動(dòng)導(dǎo)入這個(gè)包下的所有類。
java.util:Java的大量工具類/接口和集合框架類/接口,例如Arrays和List、Set等
java.net:一些Java網(wǎng)絡(luò)編程相關(guān)的類/接口
java.io:一些Java輸入/輸出編程相關(guān)的類/接口
java.text:一些Java格式化相關(guān)的類
java.sql:Java進(jìn)行JDBC數(shù)據(jù)庫(kù)編程的想相關(guān)類/接口
java.awt:抽象窗口工具集的相關(guān)類/接口,這些類主要用于構(gòu)建圖形用戶界面GUI程序
java.swing:Swing圖形用戶界面編程的相關(guān)類/接口,這些類可用于構(gòu)建平臺(tái)無關(guān)的GUI程序

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/66847.html

相關(guān)文章

  • 什么是面向對(duì)象?

    摘要:第一章面向?qū)ο笮“资且婚T完全面向?qū)ο蟮木幊陶Z言嗯什么是面向過程什么又是面向?qū)ο竽卮罄性谖覀冋竭M(jìn)入學(xué)習(xí)這部分前,了解一下面向過程和面向?qū)ο筮@兩個(gè)概念,對(duì)于我們接下來的學(xué)習(xí)有很大的好處。這一部分我們會(huì)在面向?qū)ο髮W(xué)習(xí)結(jié)束后進(jìn)行系統(tǒng)的整理和總結(jié)。 showImg(https://segmentfault.com/img/remote/1460000019303357); 第一章 面向?qū)ο?小...

    DirtyMind 評(píng)論0 收藏0
  • 1、面向對(duì)象 2、對(duì)象 3、局部變量和成員變量的關(guān)系 4、封裝思想 5、private,this

    摘要:面向?qū)ο笏季S方式將復(fù)雜的問題簡(jiǎn)單化。給對(duì)象起個(gè)名字。是類類型的變量。通過已有的對(duì)象調(diào)用該對(duì)象的功能。格式對(duì)象對(duì)象成員可以該對(duì)象的屬性賦值。這時(shí)會(huì)有兩個(gè)引用同時(shí)指向堆中的同一個(gè)對(duì)象。對(duì)象,用于描述現(xiàn)實(shí)中的個(gè)體,它是類的實(shí)例。 01面向?qū)ο蠛兔嫦蜻^程的思想 * A: 面向過程與面向?qū)ο蠖际俏覀兙幊讨校帉懗绦虻囊环N思維方式 * a: 面向過程的程序設(shè)計(jì)方式,是遇到一件事時(shí),思考我該...

    dreamtecher 評(píng)論0 收藏0
  • 夯實(shí)Java:從面向對(duì)象說起

    摘要:面向?qū)ο笈c面向過程的區(qū)別要知道,二者并不是非此即彼,而是相輔相成的。而面向過程,則在微觀上對(duì)對(duì)象內(nèi)部進(jìn)行具體的實(shí)現(xiàn)。面向?qū)ο蟮娜筇匦哉f到面向?qū)ο?,就不得不說其三大特性封裝繼承和多態(tài)。封裝封裝是面向?qū)ο笞罨A(chǔ)的特性。 作者:伯特出處:github.com/ruicbAndroid/LoulanPlan聲明:本文出自伯特的《LoulanPlan》,轉(zhuǎn)載務(wù)必注明作者及出處。 剛學(xué)習(xí) Jav...

    hearaway 評(píng)論0 收藏0
  • Java編程基礎(chǔ)07——面向對(duì)象_&private&this

    摘要:面向?qū)ο笏枷敫攀隽私饷嫦驅(qū)ο箝_發(fā)就是不斷的創(chuàng)建對(duì)象,使用對(duì)象,指揮對(duì)象做事情。面向?qū)ο笤O(shè)計(jì)其實(shí)就是在管理和維護(hù)對(duì)象之間的關(guān)系。建議文件名稱和測(cè)試類名稱一致。 1.面向?qū)ο笏枷敫攀?了解) A:面向?qū)ο箝_發(fā)就是不斷的創(chuàng)建對(duì)象,使用對(duì)象,指揮對(duì)象做事情。 B:面向?qū)ο笤O(shè)計(jì)其實(shí)就是在管理和維護(hù)對(duì)象之間的關(guān)系。 C:面向?qū)ο筇卣鞣庋b(encapsulation)、繼承(inheritance...

    Leck1e 評(píng)論0 收藏0
  • Java面向對(duì)象及其三大特征

    摘要:面向?qū)ο缶幊趟枷朊嫦驅(qū)ο?,?jiǎn)單來說就是由動(dòng)作的執(zhí)行者變?yōu)閯?dòng)作的操控者。面向?qū)ο笫窍鄬?duì)于面向過程的。面向?qū)ο笕筇卣髅嫦驅(qū)ο笥腥筇卣?,即封裝繼承和多態(tài)。接口和抽象類接口接口名方法方法,默認(rèn)修飾符為,不能用其他修飾符修飾接口。 面向?qū)ο缶幊趟枷?面向?qū)ο?,?jiǎn)單來說就是由動(dòng)作的執(zhí)行者變?yōu)閯?dòng)作的操控者。結(jié)合具體例子來說就是使用某個(gè)人或者工具所具有的功能而不用去管功能的具體實(shí)現(xiàn)方式。例如現(xiàn)實(shí)中...

    William_Sang 評(píng)論0 收藏0
  • 談?wù)勎宜斫獾?em>面向對(duì)象

    摘要:眾多面向?qū)ο蟮木幊趟枷腚m不盡一致,但是無論哪種面向?qū)ο缶幊陶Z言都具有以下的共通功能。原型編程以類為中心的傳統(tǒng)面向?qū)ο缶幊?,是以類為基礎(chǔ)生成新對(duì)象。而原型模式的面向?qū)ο缶幊陶Z言沒有類這樣一個(gè)概念。 什么是面向?qū)ο??這個(gè)問題往往會(huì)問到剛畢業(yè)的新手or實(shí)習(xí)生上,也是往往作為一個(gè)技術(shù)面試的開頭題。在這里我們不去談如何答(fu)好(yan)問(guo)題(qu),僅談?wù)勎宜斫獾拿嫦驅(qū)ο蟆?從歷...

    avwu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<