1. 程式人生 > 其它 >LeetCode DD-2020006. 簡單遊戲(字首和)

LeetCode DD-2020006. 簡單遊戲(字首和)

技術標籤:筆記

類的封裝與繼承例項1

程式碼很簡單,很容易實現。
1,區域性變數和成員變數重新命名問題

使用this關鍵字解決

2,有引數和無引數建構函式的理解

每建立一個類的例項都去初始化它的所有變數是乏味的。如果一個物件在被建立時就完成了所有的初始工作,將是簡單的和簡潔的。因此,java在類裡提供了一個特殊的成員函式,叫做建構函式(constructor)。
一個建構函式是物件被建立時初始物件的成員函式。它具有和它所在的類完全一樣的名字。一旦定義好一個建構函式,建立物件時就會自動呼叫它。建構函式沒有返回型別,即使是void型別也沒有。這是因為一個類的建構函式的返回值的型別就是這個類本身。建構函式的任務是初始化一個物件的內部狀態,所以用new操作符建立一個例項後,立刻就會得到一個清楚、可用的物件。

構造方法是一種特殊的方法,具有以下特點。 (1)構造方法的方法名必須與類名相同。
(2)構造方法沒有返回型別,也不能定義為void,在方法名前面不宣告方法型別。
(3)構造方法的主要作用是完成物件的初始化工作,它能夠把定義物件時的引數傳給物件的域。 (4)構造方法不能由程式設計人員呼叫,而要系統呼叫。
(5)一個類可以定義多個構造方法,如果在定義類時沒有定義構造方法,則編譯系統會自動插入一個無引數的預設構造器,這個構造器不執行任何程式碼。
(6)構造方法可以過載,以引數的個數,型別,或排列順序區分。

3,簡單的circle例項求圓的面積和周長


```java
package java_demo;
/*1,定義一個CIrcle類 *2,抽象出類成員變數radius(半徑),num(物件的個數),PI(圓周率常量) *3,無引數和有參的的構造方法 *4,成員方法getRadius()返回半徑 setRadius()設定半徑 * calcArea()計算面積 calcGirth()計算周長 *5,主函式main() * 構造物件()含引數 * 輸出 半徑 面積 周長 物件數目 * * * * */ public class Circle { private double radius;//成員變數 private
static int num;//物件數目 STATic靜、態 public static final double PI=3; public Circle(){ num++;//無引數的構造方法 } public Circle(double radius){//有引數的構造方法 /*有引數構造方法使用的引數變數和類成員變數是否能一樣 * 首先使用一樣的radius,執行輸出預設結果0.0 * 使用不同變數時候結果正常輸出 */ this.radius=radius;//重新命名問題區域性變數 num++; } public static int getNums(){ return num; } public double calcArea(){ return PI*radius*radius; } public double calcGirth(){ return 2*PI*radius; } public static void main(String[] args){ Circle C1=new Circle(8); System.out.println(C1.radius); System.out.println("圓的面積"+C1.calcArea()+"圓的周長"+C1.calcGirth()+"物件的個數"+C1.num); Circle C2=new Circle(9); System.out.println("圓的面積"+C2.calcArea()+"圓的周長"+C2.calcGirth()+"物件的個數"+C2.num); } }

4,執行結果
在這裡插入圖片描述