Java的封裝和繼承

2021-08-22 02:34:15 字數 1949 閱讀 2233

(根據對屬性的封裝來說明)吧對成員變數進行私有化,通過乙個公共的方法間接的實現了訪問.

髒資料

set

指的是賦值的過程

構成

修飾詞 返回值型別 方法名(引數類表)

//返回值型別: 不需要--void

//方法名:set+成員變數的名字,但是成員變數的首字母需要大寫

//引數列表:乙個方法完成對乙個屬性的賦值,所以只需要乙個引數.引數的型別與成員變數一直,引數的名字與成員變數一致

get
取值的過程

構成

修飾詞 返回值型別 方法名(引數類表)

//返回值型別: 型別與成員變數一致

//方法名:get+成員變數的名字,但是成員變數的首字母需要大寫

//引數列表:不需要引數

//方法體:return成員變數

定義:有兩個類:a類與b類,當兩個類之間產生父子關係的時候,我們稱為繼承

簡化**,方便操作,提高**的復用性,提高了安全性,增加了**的健壯性,使類與類之間產生了整合的關係,是多型的前提

父類中被private修飾的成員子類不能使用,但是在子類中式可見的.

class

phone

}//建立iphone類

class

iphone

extends

phone

}//建立華為類

class

huawei

extends

phone

}

原理
當子類有與父類同名(方法名,引數等完全相同),我們稱為重寫

注意點:

相當於子類的同名方法將父類的覆蓋了,不會再去呼叫父類的方法.

私有方法不能被重寫

子類的同名方法的許可權大於等於父類的同名方法

靜態的方法只能覆蓋靜態的方法

作用:在不改變父類方法名字的前提下,在父類原有方法的功能基礎,實現一些自己的功能.實現了對原有功能的擴充.

class animal

public

animal(string name)

private string name;

public string getname()

public

void

setname(string name)

}class dog extends animal

public

dog(string name)

public

void

play()

}

class

phone

}//建立iphone類

class

iphone

extends

phone

}

當乙個子類中只有乙個帶有引數的構造方法,只能使用帶引數的,不能使用無參的,如果想使用,必須手動建立無參的構造方法

當父類中只有帶引數的構造方法,子類的構造方法中就必須在第一行手動呼叫父類帶引數的構造方法(super(引數))

當我們創造構造方法的時候,如果自己不寫super(),系統會自動呼叫

-原因:

父類中也有屬性要進行初始化,而物件的屬性必須由自己的構造方法進行初始化,所以必須呼叫super(),所以每個構造方法中都有乙個super()

q:this和super的比較:

a :this是一種引用資料型別,代表當前的物件,儲存吧的是當前物件的位址

super:不是一種引用資料型別,可以通過super呼叫父類的成員.

Java封裝和繼承的練習

1.以物件導向的思想,編寫自定義類描述it從業者。設定屬性包括 姓名,年齡,技術方向,工作年限 方法包括 工作 public class itwork public itwork string name,int age,string tend,int workage public string ge...

封裝和繼承

建立person類,新增屬性姓名name和年齡age 建立student類 有分數屬性 繼承person類 並設定 get和 set方法對 name 和age賦值 建立 demo 類,例項化student類並在控制台列印姓名name 年齡age和分數 score的值 package emp20901...

JAVA 的多型 繼承與封裝

物件導向的三大特性 封裝 繼承 多型。定義 指允許不同類的物件對同一訊息做出響應。即同一訊息可以根據傳送物件的不同而採用多種不同的行為方式。傳送訊息就是函式呼叫 多型的作用 消除型別之間的耦合關係。多型存在的三個必要條件 1.要有繼承 2.要有重寫 3.父類引用指向子類物件。多型的好處 1.可替換性...