【初始類和對象】
- 前言
- 1. 面向對象的初步認知
- 1.1什么是面向對象
- 1.2 面向對象與面向過程
- 2. 類的定義和使用
- 2.1 簡單認識類
- 2.2 類的定義格式
- 3. 知識的代碼舉例講解
- 3.1 創建類、實例化類
- 3.2 構造方法初始化類、this
- 3. 總結
前言
由于類和對象是我們在學習過程中需要接受的概念性新知識,所以我會先帶大家簡單理解一下類和對象的基本概念,然后直接通過代碼舉例來深入學習,最后總結知識。以此達到更好的學習效果!
正文開始!!!
1. 面向對象的初步認知
1.1什么是面向對象
Java是一門純面向對象的語言(Object Oriented Program,簡稱OOP),在面向對象的世界里,一切皆為對象。面向對象是解決問題的一種思想,主要依靠對象之間的交互完成一件事情。用面向對象的思想來涉及程序,更符合人們對事物的認知,對于大型程序的設計、擴展以及維護都非常友好。
1.2 面向對象與面向過程
下面通過洗衣服的例子向大家解釋面向對象和面向過程兩個概念。
傳統的洗衣過程(面向過程) | 傳統的方式:注重的是洗衣服的過程,少了一個環節可能都不行。而且不同衣服洗的方式,時間長度,擰干方式都不同,處理起來就比較麻煩。如果將來要洗鞋子,那就是另一種放方式。按照該種方式來寫代碼,將來擴展或者維護起來會比較麻煩。 |
---|---|
現代化的洗衣(面向對象) | 以面向對象方式來進行處理,就不關注洗衣服的過程,具體洗衣機是怎么來洗衣服,如何來甩干的,用戶不用去關心,只需要將衣服放進洗衣機,倒入洗衣粉,啟動開關即可,通過對象之間的交互來完成的。 |
注意:面向過程和面相對象并不是一門語言,而是解決問題的方法,沒有那個好壞之分,都有其專門的應用場景。
2. 類的定義和使用
2.1 簡單認識類
類是用來對一個實體(對象)來進行描述的,主要描述該實體(對象)具有哪些屬性(外觀尺寸等),哪些功能(用來干啥),描述完成后計算機就可以識別了。
2.2 類的定義格式
上述我們對狗進行了描述,那么我們應該如何使用Java語言對類進行定義呢?
//創造類
class Dog(){
//字段(屬性)或成員變量public String name;public int age;public String color;
//行為或成員方法public void test(){System.out.println("小狗乖乖,小狗乖乖~");}
}
class 是創造類的關鍵詞,Dog 是類的名字,{ } 內的是類的主體。
類中包含的內容稱為類的成員。屬性主要是用來描述類的,稱之為類的成員屬性或者類成員變量。方法主要說明類具有哪些功能,稱為類的成員方法。
3. 知識的代碼舉例講解
3.1 創建類、實例化類
上述的完整代碼如下:
public class Dog {//成員變量public String name;public int age;public String color;//普通方法public void test(){System.out.println("小狗乖乖,小狗乖乖~");}//普通方法public void printDog(){System.out.println(name+this.age+"歲了,是只"+color+"的小狗");這里使用或者不適用“this.”都可以}public static void main(String[] args) {//利用關鍵詞new實例化一個對象Dog dog=new Dog();//訪問對象中的成員變量dog.name="紅包";dog.age=2;dog.color="黃色";//訪問對象中的成員方法//測試dog.test();//打印對象dog.printDog();
}
3.2 構造方法初始化類、this
介紹構造方法
構造方法的重載
補充:this 的三種用法
3. 總結
我們回到文章開頭的學習目標:
定義類的語法:
class(關鍵字) Dog(類名){
成員變量;
成員方法
}創建對象:
Dog(類名) dog(對象名)=new(關鍵字) Dog();
//()中如何書寫取決去其構造方法,若未書寫構造方法,編譯器會自動為該類生成一個默認的無參構造方法。使用()就行訪問成員變量和成員方法:
使用 . 來訪問
dog.name;
dog.test();this 的用法:
構造方法目的就是完成初始化:
public Dog(必須和類名相同){
完成初始化;
}
//若未書寫構造方法,這個默認構造方法不包含任何代碼,只是簡單地調用父類的無參構造方法。因此,即使一個類沒有聲明構造方法,程序也可以正確執行。
此時,引用類型被初始化為NULL,基本類型被初始化為0
🆗!這篇文章到此結束!!!希望對大家有所幫助!!!