計算機等級

當前位置 /首頁/IT認證/計算機等級/列表

計算機二級Java語言程式設計複習資料

Java是一個物件導向的語言。對程式設計師來說,這意味著要注意應中的資料和操縱資料的方法(method),而不是嚴格地用過程來思考。以下是關於計算機二級的文章" target="_blank" >計算機二級Java語言程式設計複習資料,希望大家認真閱讀!

計算機二級Java語言程式設計複習資料

  Java物件導向

物件導向是一種程式設計方法,或者是程式設計規範,其基本思想是使用物件、類、繼承、封裝、多型等基本概念來進行程式設計。 物件導向是一種符合人們思考習慣的思想,可以將複雜的事情簡單化,將程式設計師從執行者轉換成了指揮者

完成需求時:

• 先要去找具有所需的功能的物件來用。

• 如果該物件不存在,那麼建立一個具有所需功能的物件。

• 這樣簡化開發並提高程式碼的複用。

物件導向的開發過程其實就是不斷的建立物件,使用物件,指揮物件做事情。設計的過程其實就是在管理和維護物件之間的關係。

物件導向的特徵:

• 封裝(encapsulation)

• 繼承(inheritance)

• 多型(polymorphism)

  1.封裝

概念:是指隱藏物件的屬性和實現細節,僅對外提供公共訪問方式。

好處:• 將變化隔離。• 便於使用。• 提高重用性。• 提高安全性。

  封裝原則:

• 將不需要對外提供的內容都隱藏起來。

• 把屬性都隱藏,提供公共方法對其訪問。

Java中可以通過對類的成員設定一定的訪問許可權,實現類中成員的資訊隱藏。

private:類中限定為private的成員,只能被這個類本身訪問。如果一個類的構造方法宣告為private,則其它類不能生成該類的一個例項。

default:類中不加任何訪問許可權限定的成員屬於預設的(default)訪問狀態,可以被這個類本身和同一個包中的類所訪問。

protected:類中限定為protected的成員,可以被這個類本身、它的子類(包括同一個包中以及不同包中的子類)和同一個包中的所有其他的類訪問。

public:類中限定為public的成員,可以被所有的類訪問。

如下面的這個student類,就是使用了封裝,將類中的屬性name 、age和score私有化,使外部不能直接訪問他們,只能通過public型別的對他們方法進行操作。

class Student {

private String name;//宣告屬性 ,並設為私有型別,起到封裝的作用

private int age;

private int score;

public Student(String name,int age ,int score) { //建構函式,分別給name、age、score賦值

= name;// :this代本類物件的引用

= age;

e= score;

}

public String getName() { //設定getter方法,因為變數設為了私有,物件無法訪問類中的屬性,需要用getter方法獲取變數

return name;

}

public void setName(String name) { //設定setter方法,因為變數設為了私有,物件無法訪問類中的屬性,需要用setter方法給變數賦值

= name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

= age;

}

public int getScorre() {

return score;

}

public void setScorre(int score) {

e = score;

}

}

  2.繼承

繼承是一種聯結類的層次模型,並且允許和鼓勵類的重用,它提供了一種明確表述共性的方法。物件的一個新類可以從現有的類中派生,這個過程稱為類繼承。

新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那裡繼承方法和例項變數,並且類可以修改或增加新的方法使之更適合特殊的.需要。

子類可以直接訪問父類中的非私有的屬性和行為。通過 extends 關鍵字讓類與類之間產生繼承關係。如下:class SubDemo extends Demo{}

繼承提高了程式碼的複用性。

繼承的出現讓類與類之間產生了關係,提供了多型的前提

  繼承的特點:

Java只支援單繼承,不支援多繼承。

• 一個類只能有一個父類,不可以有多個父類。

• class SubDemo extends Demo{} //這是對的

• class SubDemo extends Demo1,Demo2...//這是錯的

Java支援多層繼承(繼承體系)

• class A{}

• class B extends A{}

• class C extends B{}

定義繼承需要注意:

• 不要僅為了獲取其他類中某個功能而去繼承

• 類與類之間要有所屬關係,xx1是xx2的一種。

如:

class Ren { //父類

int age=20;

String name="wk";

public void show() {

tln("姓名:"+name+" 年齡:"+age);

}

}

class Sudents extends Ren {//子類Sudents繼承了父類Ren

int score=90;//增加了新的屬性

int age= +1;//使用super標記父類中的元素,修改了Ren中age的值

public void show() {//重寫了父類中的方法( 覆蓋時,子類方法許可權一定要大於等於父類方法許可權,靜態只能覆蓋靜態。)