自學物件導向

2022-04-30 08:39:09 字數 1946 閱讀 7104

物件導向程式設計(oop,object(物件) oriented(面向) programming(程式設計))

是將現實世界中的概念模擬到電腦程式中,它將現實世界中的所有事物視為物件。

萬物皆物件 類為產品的藍圖,物件為乙個產品。

blueprint manufacture = new blueprint();

例如一輛汽車 屬性有顏色,速度;方法有加速,減速。

class car //定義乙個car類

void slowdown() //減速

}我們平日要看電視,只需會用遙控器就可以了,而無需了解電視的內部構造。

這種內部資訊的隱藏就叫做『封裝』

public class tv  //定義乙個tv類

}訪問修飾符

public          可被所屬類的成員以及不屬於類的成員訪問

internal        可被當前程式集訪問

protected     可被所屬類或派生類的型別訪問

private          僅所屬類的成員才可以訪問

電視機從黑白到彩色再到高畫質晰,無論怎麼變都會有影象與聲音,下一代繼承上一代的特點並有所發展。

這個就叫做『繼承』

class cleartv:tv //定義派生類cleartv繼承於基類tv

乙個洗衣機可以根據放進衣服的骯髒程度來判斷所需的洗滌時間,這種功能就叫做多型。

方法過載

public class washer //洗衣機

void abstersion(long dinginess) //骯髒衣服的洗滌方法

}方法重寫

我想把騎自行車的速度變成汽車那麼快

class bicycle

}class car:bicycle

}抽象方法

抽象方法的目的在於指定派生類必須實現與這一方法關聯的行為。

abstract class abc   //抽象類abc

class derv:abc   //派生類

}基類實現了抽象類,則派生類不需要重新實現該抽象類。

abstract class myabs  //抽象類

class myclass:myabs  //派生類

}class submyclass:myclass //派生自myclass的子類

}class myclient

}如果你還認為輸出結果是:

在myclass中實現的抽象方法

在submyclass中未實現的抽象方法

那就錯了!。

正確輸入結果:

在submyclass中未實現的抽象方法

記住 派生類不需要重新實現該抽象類!

程式設計高手不是看原理看出來的,而是靠**打出來的。我也用所學練習一下。

建立乙個shape類,此類包含乙個名為_color的資料成員(用於存放顏色值)和乙個getcolor()方法(用於獲取顏色值)。這個類還包含乙個名為getarea()的抽象方法。用這個類建立名為circle(圓形)和square(正方形)的兩個子類,這兩個類都包含兩個資料成員,即_radius和_sidelen 這些派生類應提供getarea()方法的實現,以計算相應形狀的面積。

abstract class shape

public abstract void getarea();

}class circle : shape

,面積為的圓形", _color, _radius * _sidelen);}}

class square : shape

,面積為的正方形", _color, _radius * _radius);}}

class test

}控制台輸出:

輸入顏色:

blue

輸入圓形半徑:

5顏色為blue,面積為15.7的圓形

輸入顏色:

red輸入正方形邊長:

5顏色為red,面積為25的正方形

(自學)物件導向

物件導向設計原則 敏捷軟體開發 摘抄自 敏捷軟體開發 原則 方法與實踐 robert c.martin 1 srp 單一職責原則 就乙個類而言,應該僅有乙個引起它變化的原因。職責即為 變化的原因 2 ocp 開放封閉原則 軟體實體 類 模組 函式等 應該是可以擴充套件的,但是不可修改。對於擴充套件是...

Python物件導向自學(一)

1.定義乙個類 class demo 表示繼承時有括號 pass這樣就簡單定義出乙個類 2.根據類例項化乙個物件 class demo 表示繼承時有括號 pass one demo one就是根據demo這個類建立出來的乙個物件3.增加訪問屬性 一 直接通過物件動態新增 class demo 表示繼...

Kotlin自學日記之物件導向

物件 類 繼承 封裝 多型 物件的含義是指具體的某乙個事物,即在現實生活中能夠看得見摸得著的事物。在物件導向程式設計中,物件所指的是計算機系統中的某乙個成分。在物件導向程式設計中,物件包含兩個含義,其中乙個是資料,另外乙個是動作。物件則是資料和動作的結合體。物件不僅能夠進行操作,同時還能夠及時記錄下...