1. 程式人生 > >java基礎學習_面向對象(上)02_day07總結

java基礎學習_面向對象(上)02_day07總結

ron 分享 方式 復用性 消失 總結 一個 alt 引用

=============================================================================
=============================================================================
涉及到的知識點有:
---------------------------------------
-----------------------------------------------------------------------------
=============================================================================
=============================================================================
1:成員變量和局部變量的區別(理解)


  (1)在類中的位置不同:
    成員變量:在類中方法外。
    局部變量:在方法定義中或者方法聲明上(即形參)。
  (2)在內存中的位置不同:
    成員變量:在堆中。
    局部變量:在棧中。
  (3)生命周期不同:
    成員變量:隨著對象的創建而存在,隨著對象的消失而消失。
    局部變量:隨著方法的調用而存在,隨著方法的調用完畢而消失。
  (4)初始化值不同:
    成員變量:有默認值。
    局部變量:沒有默認值,必須定義,賦值,然後才能使用。
  (5)註意事項:
    局部變量名稱可以和成員變量名稱一樣,但是在方法中使用該變量的時候,采用的是就近原則(先找小範圍,再找大範圍)。
-----------------------------------------------------------------------------
2:類作為形式參數的問題?(理解)

  (0)之前學的形式參數問題:
    基本數據類型(數值型、字符型、布爾型):形式參數的改變不影響實際參數。
    引用數據類型(類、接口、數組):形式參數的改變會直接影響實際參數。
  (1)如果一個方法的形參的數據類型是一個類時(即引用數據類型),這裏的形參其實需要的是該類的一個具體的對象。
如下圖所示01:

技術分享圖片
-----------------------------------------------------------------------------
3:匿名對象(理解)
  (1)就是沒有名字的對象(是對象的一種簡化表示形式)。
  (2)匿名對象的應用場景:
    A:對象調用方法僅僅一次的時候。


      註意:調用多次對象的時候,不適合。
    那麽,這種匿名對象調用方法有什麽好處嗎?
      有,匿名對象調用方法完畢後就是垃圾。可以被垃圾回收器回收,提高內存使用效率。
    B:匿名對象可以作為實際參數進行傳遞。
如下圖所示02:

技術分享圖片
-----------------------------------------------------------------------------
4:封裝(理解)
  (1)是指隱藏對象的屬性和實現細節,僅對外提供公共訪問方式。
  (2)好處:
    A:隱藏實現細節,提供公共的訪問方式。
    B:提高了代碼的復用性。
    C:提高了代碼的安全性。
  (3)設計原則
    把不想讓外界知道的實現細節給隱藏起來,把屬性隱藏,提供公共的訪問方式。
  (4)private是封裝的一種體現之一。
    封裝體有這幾個:
      (1)類
      (2)方法
      (3)private修飾成員變量
-----------------------------------------------------------------------------
5:private關鍵字(掌握)
  (0)是一個權限修飾符。
  (1)私有的意義,可以修飾成員變量和成員方法。(一般來說,private多用來修飾成員變量,少用來修飾成員方法。)
  (2)特點:
    被private修飾的成員只能在本類中被訪問。要想訪問它,它就要對外提供公共的訪問方式。
  (3)private的應用:
    以後再寫一個類的時候:
    把所有的成員變量給private了。
    提供對應的getXxx()/setXxx()方法。
-----------------------------------------------------------------------------
6:this關鍵字(掌握)
  (0)name = name; //把自己賦值給自己,沒有任何意義。(變量的使用規則:就近原則)
  (1)代表當前類的引用對象。簡單的記,它就代表當前類的一個具體對象。
    記住:哪個對象調用方法,在該方法內部的this就代表哪個對象。
  (2)this的應用場景:
    A:解決了局部變量隱藏成員變量的問題。
    B:其實this還有其他的應用,其他用法後面和super一起講解。
如下圖所示03/04:

技術分享圖片

技術分享圖片
-----------------------------------------------------------------------------

java基礎學習_面向對象(上)02_day07總結