在初學者學Java的時候,面向對象很難讓人搞懂,那么今天小編就來為大家把這個思想來為大家用極為簡單的方法理解吧。
首先我們來簡單的闡述面向對象的思想。
面向對象:
官方的語言很抽象,我們把官方的解釋和定義拋開。想想,自己有什么,對!!我們自己有手腳眼口鼻等一系列的器官。來把自己所具有的器官就可以看作我們的屬性,自己是不是可以喜怒哀樂和嬉笑怒罵,這些是不是我們的行為,那么自己的具有的屬性加自己有的行為就稱為一個對象。
注意!!我們自己,一個個體是一個對象,因為,你是你,我是我,我們雖然有相同的,但是我們不一樣,比如你比我高,我比你頭發長。
接下來在進一步。我和你都是人,因為我和你有相似的東西,所以我和你都屬于人類。人類,就是人的總稱,也是相似對象的一種抽象。
從上面看:我和你只是人類的兩個特列,但是外星人也可以用人類來稱呼我們,看的出來:類的具體表現或者實例就是對象,而對象的抽象或者總概括就是類。
小編說的這么簡單,沒有用例子說話怎么行,下面我們進入用Java代碼來反應情況。
下面我們來寫出一個人的類,注意:對象是由類而來,類先有,對象后有,是類實例化才有。
原文代碼不太合適,小編修改后如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
public class Person { String name; int age; String gender; public Person() { } Person(String name, int age,String gender){ this .name = name; this .age = age; this .gender = gender; System.out.println( this .name+ "對象被創建了" + ",有" + this .age+ "歲" + ",是" + this .gender+ "的" ); } public static void main(String[] args) { Person p1 = new Person( "張三" , 18 , "男" ); Person p2 = new Person( "李四" , 19 , "女" ); } } |
運行結果:
1
2
|
張三對象被創建了,有 18 歲,是男的 李四對象被創建了,有 19 歲,是女的 |
以上就是對面向對象的理解。
類:
上面小編已經說到類是屬性加行為,上面的代碼就已經說明了屬性了
為了更好的說明行為,我們就加入Java中類的行為————方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
package objectandclass; import java.awt.SecondaryLoop; public class Person { String name; int age; String gender; public Person() { } Person(String name, int age,String gender){ this .name = name; this .age = age; this .gender = gender; System.out.println( this .name+ "對象被創建了" + ",有" + this .age+ "歲" + ",是" + this .gender+ "的" ); } public void say(){ System.out.println( "我說我叫" + this .name+ ",別以為我不會說話,我會說很多話。" ); } } |
類有了方法之后,對象也能調用這個方法,我們稱,此時對象具有了類的一些行為體現。
1
2
3
4
5
6
|
public static void main(String[] args) { Person p1 = new Person( "張三" , 18 , "男" ); p1.say(); Person p2 = new Person( "李四" , 19 , "女" ); p2.say(); } |
顯而易見:運行的結果肯定為:
1
2
3
4
|
張三對象被創建了,有 18 歲,是男的 我說我叫張三,別以為我不會說話,我會說很多話。 李四對象被創建了,有 19 歲,是女的 我說我叫李四,別以為我不會說話,我會說很多話。 |
下面我們說一說關于類的一些特征 :
類,他有自己的東西,也有給對象的東西。類的東西就是類的成員
類的成員一般有初始化塊,構造器,屬性,方法,內部類,枚舉類。
如果是屬于類的東西(直接可以用類名.成員調用。)則用static調用。
其實類的東西對象都能用,無論是不是靜態的,但是不用static修飾 的,就是對象的東西,只能由實例化的對象來調用。
關于對象就不用說了,大家記兩點就行,要創建對象,必須調用構造器。
初始化塊可以看作是特殊的構造器,無參數傳入,創建對象時,反正會被調用。
總結
以上就是本文關于Java語言面向對象編程思想之類與對象實例詳解的全部內容,希望對大家有所幫助。有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對服務器之家網站的支持!
原文鏈接:http://blog.csdn.net/a907691592/article/details/51603866