帶你快速了解Java中類和對象的關(guān)系
本文重點解讀Java里的類和對象的關(guān)系
1、首先介紹兩個概念
類:類是對現(xiàn)實生活中一類具有共同屬性和行為事務(wù)的抽象,確定對象將會擁有的屬性和行為。
對象:對象是類的一個實例(對象不是找個女朋友),有狀態(tài)和行為。例如,一條狗是一個對象,它的狀態(tài)有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。
概念比較抽象,我們來講一個具體的項目開發(fā)場景,來理解類和對象。假如,我們現(xiàn)在要開發(fā)一套圖書管理系統(tǒng),我們?nèi)绾卧诔绦蚶锩姹硎境鲆槐緯兀窟@個時候就用到了類的概念,我們可以定義一個表示書的數(shù)據(jù)類型,這個新的數(shù)據(jù)類型就是類。上代碼:
public class Book {
String bookName; //書名
String author; //作者
Integer price; //價格
}
書的類定義好了,我們接下來如何在程序里面表示具體的一本書呢?比如用程序描述一下《百年孤獨》這本書的相關(guān)數(shù)據(jù),這個時候,我們需要創(chuàng)建一個類(書)的實體(《百年孤獨》),這個實體就是對象。上代碼:
public class Main {
public static void main(String[] args){
Book book = new Book();
book.bookName = "百年孤獨";
book.author = "馬爾克斯";
book.price = 55;
}
}
2、類的組成
類是由屬性和行為組成的:
- 屬性:在類中通過成員變量來體現(xiàn);
- 行為:在類中通過成員方法來體現(xiàn);
還以圖書管理系統(tǒng)為例,書是一個類,書名、作者、價格和是否可借都是類的成員變量;借書這種行為,就是這個類的成員方法。我們再寫一個書的類:
public class Book {
//有關(guān)書的成員變量
String bookName; //書名
String author; //作者
Integer price; //價格
Boolean state; //當(dāng)前狀態(tài)
//有關(guān)書的成員方法
void lendBook(){
System.out.println("借走一本<<"+bookName+">>");
System.out.println("作者:"+author);
System.out.println("價格:"+price);
}
}
3、對象的使用
使用對象前,首先要創(chuàng)建對象,創(chuàng)建對象的關(guān)鍵字是new,創(chuàng)建對象成功后,可以調(diào)用類里面的成員變量和方法。
public class Main {
public static void main(String[] args){
//創(chuàng)建對象
Book book = new Book();
//調(diào)用類的成員變量
book.bookName = "百年孤獨";
book.author = "馬爾克斯";
book.price = 55;
book.state = true;
//調(diào)用類的方法
book.lendBook();
}
}
4、運行結(jié)果

5、總結(jié)
到此這篇關(guān)于帶你快速了解Java中類和對象的關(guān)系的文章就介紹到這了,更多相關(guān)Java類和對象關(guān)系內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MyBatis-Plus中SimpleQuery查詢實現(xiàn)
本文主要介紹了MyBatis-Plus中SimpleQuery查詢實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
springcloud gateway如何配置動態(tài)路由
本文主要介紹了在SpringCloudGateway中配置動態(tài)路由的步驟,包括引入依賴、配置路由源、添加配置中心依賴、配置配置中心、定義路由規(guī)則和刷新配置等內(nèi)容,使路由規(guī)則在配置中心更新時,無需重啟網(wǎng)關(guān)服務(wù)即可動態(tài)應(yīng)用新的路由規(guī)則2024-10-10
mybatis的ParamNameResolver參數(shù)名稱解析
這篇文章主要為大家介紹了mybatis的ParamNameResolver參數(shù)名稱解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
java中LinkedBlockingQueue與ArrayBlockingQueue的異同
這篇文章主要介紹了java中LinkedBlockingQueue與ArrayBlockingQueue的異同,需要的朋友可以參考下2016-08-08
Spring+SpringMVC+JDBC實現(xiàn)登錄的示例(附源碼)
這篇文章主要介紹了Spring+SpringMVC+JDBC實現(xiàn)登錄的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05

