物件導向程式設計(object oriented programming)作為一種新方法,其本質是以建立模型體現出來的抽象思維過程和物件導向的方法。模型是用來反映現實世界中事物特徵的。任何乙個模型都不可能反映客觀事物的一切具體特徵,只能對 事物特徵和變化規律的一種抽象,且在它所涉及的範圍內更普遍、更集中、更深刻地描述客體的特徵。通過建立模型而達到的抽象是人們對客體認識的深化。
物件導向程式設計中的概念主要包括:物件、類、資料抽象、繼承、動態繫結、資料封裝、多型性、訊息傳遞。通過這些概念物件導向的思想得到了具體的體現。
1)物件(object) 可以對其做事情的一些東西。乙個物件有狀態、行為和標識三種屬性。
2)類(class) 乙個共享相同結構和行為的物件的集合。
類(class)定義了一件事物的抽象特點。通常來說,類定義了事物的屬性和它可以做到的(它的行為)。舉例來說,「狗」這個類會包含狗的一切基礎特徵,例如它的孕育、毛皮顏色和吠叫的能力。類可以為程式提供模版和結構。乙個類的方法和屬性被稱為「成員」。
3)封裝(encapsulation): 第一層意思:將資料和操作**在一起,創造出乙個新的型別的過程。
第二層意思:將藉口與實現分離的過程。
4)繼承 類之間的關係,在這種關係中,乙個類共享了乙個或多個其他類定義的結構和行為。繼承描述了類之間的「是一種」關係。子類可以對基類的行為進行擴充套件、覆蓋、重定義。
5)組合 既是類之間的關係也是物件之間的關係。在這種關係中乙個物件或者類包含了其他的物件和類。
組合描述了「有」關係。
6)多型 型別理論中的乙個概念,乙個名稱可以表示很多不同類的物件,這些類和乙個共同超類有關。因此,這個名稱表示的任何物件可以以不同的方式響應一些共同的操作集合。
7)動態繫結 也稱動態型別,指的是乙個物件或者表示式的型別直到執行時才確定。通常由編譯器插入特殊**來實現。與之對立的是靜態型別。
8)靜態繫結 也稱靜態型別,指的是乙個物件或者表示式的型別在編譯時確定。
9)訊息傳遞 指的是乙個物件呼叫了另乙個物件的方法(或者稱為成員函式)。
10)方法 也稱為成員函式,是指物件上的操作,作為類宣告的一部分來定義。方法定義了可以對乙個物件執行那些操作。
public class object {
public static void main(string args) {
student person =new student(); //建立乙個student類的物件person.
int a =10;
person.name=「張三」; //給成員變數name賦值
person.age=20; //給成員變數age賦值
person.height=1.888; //給成員變數height賦值
person.gender=「男」; //給成員變數gender賦值
system.out.println(person.name); //呼叫成員變數
system.out.println(person.age); //
system.out.println(person.height); //
system.out.println(person.gender); //
system.out.println(person.add(13,12)); // 呼叫自動求兩個數的和的成員方法 add(引數一,引數二)
person.singing(); //呼叫成員方法 singing
system.out.println(a);
class student{ //定義乙個名為student 的類
string name; //
int age ;
double height;
string gender;
public int add(int a,int b) {
return a+b;
public void singing() {
system.out.println(「唱歌」);
OOP物件導向程式設計
oop 達到了軟體工程的三個主要目標 重用性 靈活性和擴充套件性。元件 資料和功能一起在執行著的電腦程式中形成的單元,元件在 oop 電腦程式中是模組和結構化的基礎。抽象性 程式有能力忽略正在處理中資訊的某些方面,即對資訊主要方面關注的能力。封裝 也叫做資訊封裝 確保元件不會以不可預期的方式改變其它...
OOP 物件導向程式設計
作用 建立物件 初始化 基本概念 1.方法名和類名一致 2.沒有返回值宣告 3.呼叫 使用 new 關鍵字,本類中呼叫使用 this 4.預設有乙個無參構造,當宣告了乙個構造方法後,預設的不再提供 1.在乙個類中,方法名相同 2.引數列表不一樣 型別 順序 數量,跟引數名無關 3.跟返回值無關 三大...
OOP 物件導向程式設計
1.資料抽象 將類的實現和介面分離 2.繼承 相似型別對相似關係建模 3.動態繫結 size t 無符號型別 class quote 基類 class bulk quote public quote 派生類 double print total ostream os,const quote item...