iT邦幫忙

2026 iThome 鐵人賽

DAY 17
0

本日學習:
—類別的進階認識—
物件變數

  1. 基本型別:int、double 等
  2. 非基本型別:陣列、字串或由類別宣告而得的變數
  3. 指向由類別建立的物件,例如:Circle c1 = Circle(); 裡的 c1,就是「物件變數」
  4. 可以指向同一類別建立的另一物件
  5. 如果要傳遞物件變數到函數,只要在定義函數時把類別名稱加到函數前即可
    如:public void compare(Circle cir){};
  6. 如果是從函數傳回物件變數,就在函數錢加上類別名稱
    如:public Circle compare(Circle cir){};

利用陣列來儲存物件

  1. 先建立物件陣列,再配置空間
    如:Circle[] cir = new Circle[3];
  2. 再建立陣列元素,如:cir[0] = new Circle();可用 for 迴圈幫助完成

傳遞物件陣列到函數

  1. 例如:public static double compare(Circle[] c){};
  2. 可加 static,如此屬於類別函數,在印出時可直接由 Circle 類別呼叫,不須透過物件
    如:System.out.println(Circle.compare(cir)); // 傳遞物件陣列 cir 到函數

內部類別

  1. 在類別內部定義類別
  2. public or private is OK
  3. 如果外部類別宣告成 static,內部類別也必須宣告成 static,也就是說在此情況下不能建立物件
  4. 內外互相不受 private 限制

回收記憶體

  1. C 語言無提供
  2. 程式會自己找適當的時機自己回收
  3. 如果明確知道哪一個物件不會再使用,只要 c1 = null; 就可以了
  4. 可避免系統資源被浪費

上一篇
Day 16:類別(4)
系列文
從零開始學程式語言:Java 新手修煉記 共 17 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言