一、面向?qū)ο?/div>
1.面向?qū)ο笫窃诔绦蛑惺褂脤?duì)象來映射現(xiàn)實(shí)中的事物,對(duì)象的關(guān)系來描述事物之間的聯(lián)系。
2.面向?qū)ο蟮奶攸c(diǎn):
封裝性:封裝是將類的某些信息隱藏在類內(nèi)部,不讓外部程序去訪問,需要通過這個(gè)類提供的方法來實(shí)現(xiàn)對(duì)隱藏信息的操作和訪問。封裝也是面向?qū)ο蟮暮诵乃枷?,把類的屬性和行為封裝起來,不給外界知道具體的細(xì)節(jié)。
繼承性:繼承是類與類的一種關(guān)系,而不是對(duì)象在繼承。子類從父類繼承,子類中就擁有父類中定義的所有成員,只是類的繼承,我們創(chuàng)建對(duì)象,對(duì)象與對(duì)象是毫無關(guān)系的。滿足繼承是一種”is a”關(guān)系,凡是滿足”is a”關(guān)系的類就可以擁有繼承的關(guān)系,當(dāng)A類是1個(gè)B類的時(shí)候,那么A類就可以從B類繼承,例如“貓”繼承“動(dòng)物”,動(dòng)物類是貓類的父類或基類,貓類是動(dòng)物類的子類或派生類。
多態(tài)性:多態(tài)就是對(duì)象的多種形態(tài)。在程序中可以出現(xiàn)重名現(xiàn)象,它指在一個(gè)類中定義的方法和屬性被其他類繼承,它們就有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為,使得同一個(gè)屬性和方法在不同類有不同的意義。
二、類的定義
1.什么是類?
物以類聚,人以群分。類是對(duì)一群具有相同特征或行為的事物的1個(gè)統(tǒng)稱。是抽象的也不能直接使用。如果非要使用類的話呢?只能去找這一類事物中的一個(gè)具體存在,然后使用這個(gè)具體存在。
2.類中可以定義成員變量和成員方法,其中成員變量用來描述對(duì)象的特征,也叫做屬性。成員方法用來描述對(duì)象的行為,稱作方法。
3.如何定義一個(gè)類
class Person{
int age;//定義int類型變量age
//定義speak()方法
void speak(){
System.out.print("我今年"+age+"歲");
}
}
首先是定義了一個(gè)Person類,Person是類名,age是成員變量,speak()成員方法。在成員方法可以訪問成員變量的age。
4.定義在類中的變量是成員變量,定義在方法中的變量局部變量。假設(shè)在某一個(gè)方法中定義局部變量跟成員變量的名是一樣的,這時(shí)方法訪問的是局部變量而不是成員變量。
例如:
class Person{
int age=3;//成員變量
//定義speak()方法
void speak(){
int age=10;//局部變量
System.out.print("我今年"+age+"歲");
}
}
public class p13 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Person p1=new Person();
p1.speak();
}
}
輸出的結(jié)果是:
我今年10歲
三、對(duì)象的創(chuàng)建和使用
1.什么是對(duì)象
對(duì)象是現(xiàn)實(shí)生活中的一個(gè)個(gè)具體存在.??吹靡?、摸的著。拿過來就可以直接使用。
2.創(chuàng)建對(duì)象的格式
類名 對(duì)象名稱=new 類名();
例如:
Person p=new Person();
上面代碼中”new Person()”是創(chuàng)建Person類的一個(gè)實(shí)例對(duì)象,”Person p”是Person類的變量p。“=”表示Person對(duì)象在內(nèi)存中的地址賦值給變量p。這個(gè)變量p就有了對(duì)象的引用。
3.創(chuàng)建對(duì)象后,可以通過對(duì)象的引用來訪問對(duì)象的所有成員。
訪問對(duì)象成員的格式
對(duì)象引用.對(duì)象成員
4.如何訪問對(duì)象成員的案例
class Person{
int age;//成員變量
//定義speak()方法
void speak(){
System.out.println("我叫張三,今年"+age+"歲");
}
}
public class p13 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//創(chuàng)建兩個(gè)Person的對(duì)象
Person p1=new Person();//創(chuàng)建第一個(gè)Person對(duì)象
p1.age=8;//age屬性賦值
p1.speak();//調(diào)用對(duì)象的方法
Person p2=new Person();//創(chuàng)建第二個(gè)Person對(duì)象
p2.speak();//調(diào)用對(duì)象的方法
}
}
輸出的結(jié)果是:
我叫張三,今年8歲
我叫張三,今年0歲
四、總結(jié)
本文主要介紹了面向?qū)ο蟾拍?,面向?qū)ο蟮娜齻€(gè)特點(diǎn)封裝性、繼承性、多態(tài)性。類的定義和創(chuàng)建對(duì)象與使用。詳細(xì)的介紹了怎么去定義一個(gè)類,通過案例來理解怎么去定義的。對(duì)象的創(chuàng)建與使用介紹了使用的格式,通過創(chuàng)建對(duì)象后,可以通過對(duì)象的引用來訪問對(duì)象的成員。希望大家通過本文的學(xué)習(xí),對(duì)你有所幫助!