摘要:初始面向對象面向對象關注現實存在的事物的各方面信息,從對象的角度出發,根據事物的特征進行程序設計類類是模子,是一個抽象的概念,確定對象將會擁有的特征屬性和行為方法,是具有相同屬性和方法的一組對象的集合對象對象是類的實例化表現,是一個用來描述
Lecture1 初始面向對象
面向對象:關注現實存在的事物的各方面信息,從對象的角度出發,根據事物的特征進行程序設計
類:類是模子,是一個抽象的概念,確定對象將會擁有的特征(屬性)和行為(方法),是具有相同屬性和方法的一組對象的集合
對象:對象是類的實例化表現,是一個用來描述客觀事物的實體
類是對象的類型,對象是特定類型的數據
屬性和方法:屬性--對象具有的各種靜態特征;方法--對象具有的各種動態行為
包的推薦命名規則:
均使用小寫英文字母
采用域名的倒序
Tips:類中的成員屬性默認有初始值
成員屬性的默認值
基本類型 | 默認值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0 |
char | "u0000" |
boolean | false |
引用類型 | null |
單一職責原則:又叫單一功能原則;一個類應該有且只有一個引起功能變化的原因;如果一個類所承載的功能越多,它的交融耦合性就越高,可復用性就越低
實例化對象的過程可以分成兩個部分:
聲明對象(發生在棧空間,在棧中開辟空間,儲存的是實例化對象的堆空間的內存地址)
實例化對象(發生在堆空間,完成對象的初始化操作)
Lecture2 構造方法介紹構造方法:又稱為構造方法,構造器
構造方法結構:
構造方法名與類名相同且沒有返回值
構造方法的語法格式:
public 構造方法名(參數列表){ 初始代碼塊; }
構造方法只能在對象實例化的過程中調用
當沒有指定構造方法時,系統會自動添加無參的構造方法
當存在指定的構造方法時,無論是有參還是無參的構造方法,系統都不會再自動添加無參的構造方法
一個類中可以有多個構造方法
就近原則:優先尋找同一個作用范圍內的同名元素
this關鍵字:代表當前對象的默認引用
this關鍵字的使用:
調用成員屬性,解決成員屬性和局部變量的同名沖突
調用同一個類中的其他成員方法
調用重載的構造方法,構造方法在類內不能直接被普通成員方法調用,但可以使用this(參數列表);調用構造方法,this(參數列表);必須放在方法體內的第一行
vio
chapter9 面向對象案例:
package Chapter9.Lecture1.cat; /** * 寵物貓類 */ public class Cat { //成員屬性:昵稱、年齡、體重、品種 String name; //昵稱,String類型默認值為null int month; //年齡,int類型默認值為0 double weight; //體重,double類型默認值為0.0 String species; //品種 //無參構造方法 public Cat() { System.out.println("我是無參構造方法"); } //帶參構造方法 public Cat(String name, int month, double weight, String species) { this.name = name; this.month = month; this.weight = weight; this.species = species; } //成員行為:跑動、吃東西 //跑動的方法 public void run() { System.out.println("小貓快跑"); } public void run(String name) { System.out.println(name + "快跑"); } //吃東西的方法 public void eat() { System.out.println("小貓吃魚"); } }
package Chapter9.Lecture1.cat; public class CatTest { public static void main(String[] args) { //對象實例化 Cat one = new Cat(); //測試 one.eat(); one.run(); System.out.println("=================="); one.name = "花花"; one.month = 2; one.weight = 1000; one.species = "英國短毛貓"; System.out.println("昵稱:" + one.name); System.out.println("年齡:" + one.month); System.out.println("體重:" + one.weight); System.out.println("品種:" + one.species); System.out.println("=================="); one.run(one.name); } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/68661.html
摘要:特點具備相當的好的靈活性,不僅能夠使用來定義緩存的和各種,還提供開箱即用的緩存臨時存儲方案,也支持和主流的專業緩存例如的集成。其中號代表這是一個表達式,此表達式可以遍歷方法的參數對象,具體語法可以參考的相關文檔手冊。 SpringBoot 是為了簡化 Spring 應用的創建、運行、調試、部署等一系列問題而誕生的產物,自動裝配的特性讓我們可以更好的關注業務本身而不是外部的XML配置,...
摘要:特點具備相當的好的靈活性,不僅能夠使用來定義緩存的和各種,還提供開箱即用的緩存臨時存儲方案,也支持和主流的專業緩存例如的集成。其中號代表這是一個表達式,此表達式可以遍歷方法的參數對象,具體語法可以參考的相關文檔手冊。 SpringBoot 是為了簡化 Spring 應用的創建、運行、調試、部署等一系列問題而誕生的產物,自動裝配的特性讓我們可以更好的關注業務本身而不是外部的XML配置,...
摘要:享元模式屬于結構型模式的一種,又稱輕量級模式,通過共享技術有效地實現了大量細粒度對象的復用概述兩種結構狀態內部狀態享元對象內部不隨外界環境改變而改變的共享部分。 享元模式(Flyweight Pattern)屬于結構型模式的一種,又稱輕量級模式,通過共享技術有效地實現了大量細粒度對象的復用... 概述 兩種結構狀態 內部狀態:享元對象內部不隨外界環境改變而改變的共享部分。 外部狀態...
摘要:面向對象與面向過程的區別要知道,二者并不是非此即彼,而是相輔相成的。而面向過程,則在微觀上對對象內部進行具體的實現。面向對象的三大特性說到面向對象,就不得不說其三大特性封裝繼承和多態。封裝封裝是面向對象最基礎的特性。 作者:伯特出處:github.com/ruicbAndroid/LoulanPlan聲明:本文出自伯特的《LoulanPlan》,轉載務必注明作者及出處。 剛學習 Jav...
閱讀 2268·2021-08-23 09:46
閱讀 915·2019-08-29 18:31
閱讀 1869·2019-08-29 17:04
閱讀 2457·2019-08-29 12:23
閱讀 1856·2019-08-26 14:05
閱讀 1083·2019-08-26 13:44
閱讀 3149·2019-08-26 12:23
閱讀 2206·2019-08-26 10:46