面向過程 & 面向物件(一)
阿新 • • 發佈:2021-10-21
-
面向過程的思想
-
步驟清晰簡單,第一步做什麼,第二步做什麼……
-
面對過程適合處理一些較為簡單的問題
-
-
面向物件的思想
-
物以類聚,分類的思維模式,思考問題首先會解決問題需要哪些分類,然後對這些分類進行單獨思考。最後,才對某個分類的細節進行面向過程的思索。
-
面向物件適合處理複雜的問題,適合處理需要多人協作的問題!
-
-
**對於描述複雜的事物,為了從巨集觀上把握、從整體上合理分析,我們需要使用面向物件的思路來分析整個系統。但是,具體到微觀操作,仍然需要面向過程的思路去處理。
-
面向物件程式設計(Object-Oriented Programming,OOP)
-
面向物件程式設計的本質就是:以類的方式組織程式碼,以物件的組織(封裝)資料
-
抽象
-
三大特性
-
封裝
-
繼承
-
多型
-
-
從認識論角度考慮是現有物件後有類。物件,是具體的事物。類,是抽象的,是對物件的抽象。
-
從程式碼執行角度考慮是先有類後有物件。類是物件的模板
-
類是一種抽象的資料型別,它是對某一類事物整體的描述/定義,但是並不能代表某一個具體的事物。
-
動物、植物、手機、電腦……
-
Person類、Pet類、Car類等,這些類都是用來描述/定義某一類具體的事物應該具備的特點和行為
-
-
物件是抽象概念的具體例項
-
張三就是人的一個具體例項,張三家裡的旺財就是狗的一個具體例項。
-
能夠體現除特點,展現出功能的是具體的例項,而不是一個抽象的概念。
-
-
建立與初始化物件
-
使用new關鍵字建立物件
-
使用new關鍵字建立的時候,除了分配記憶體空間之外,還會給建立好的物件進行預設的初始化以及類中構造器的呼叫。
-
類中的構造器也稱構造方法,是在進行建立物件的 時候必須要呼叫的。並且構造器有以下兩個特點:
-
必須和類的名字相同
-
必須沒有返回型別,也不能寫void
-
-
-
package com.oop.demo02;
//java ---> class
public class Person {
//一個類即使什麼都不寫,它也會存在一個方法
//顯示定義的構造器
String name;
//1.使用new關鍵字,本質是在呼叫構造器
//2.用來初始化值
public Person(){}//無參構造
//有參構造:一旦定義了有參構造,無參構造就必須顯式定義
public Person(String name){
this.name = name;
}
//alt + insert 生成構造器
//alt + insert + Constructor + OK 生成有參構造器
//alt + insert + Constructor + Select None 生成無參構造器
}
/*
//new 例項化了一個物件
Person person = new Person("dashu");
System.out.println(person.name);
構造器:
1.和類名相同
2.沒有返回值
作用:
1.new本質在呼叫構造方法
2.初始化物件的值
注意點:
1.定義有參構造之後,如果想使用無參構造,須顯示的定義一個無參構造
*/