日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第三次学JAVA再学不好就吃翔(part21)--局部变量与成员变量

發布時間:2023/12/19 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第三次学JAVA再学不好就吃翔(part21)--局部变量与成员变量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習筆記,僅供參考


文章目錄

      • 面向對象
        • 局部變量與成員變量的區別
        • 來幾個例子
        • 注意事項


面向對象



局部變量與成員變量的區別


  • 在類中的位置不同
    • 成員變量:在類中方法外
    • 局部變量:在方法定義中或者方法聲明上
  • 在內存中的位置不同
    • 成員變量:在堆內存(成員變量屬于對象,對象進堆內存)
    • 局部變量:在棧內存(局部變量屬于方法,方法進棧內存)
  • 生命周期不同
    • 成員變量:隨著對象的創建而存在,隨著對象的消失而消失
    • 局部變量:隨著方法的調用而存在,隨著方法的調用完畢而消失
  • 初始化值不同
    • 成員變量:有默認初始化值
    • 局部變量:沒有默認初始化值,必須定義,賦值,然后才能使用。

來幾個例子


  • 舉個例子1(成員變量有默認初始化值,而局部變量沒有)
class BunnyTest {public static void main(String[] args) {System.out.println("YES!");Bunny b1 = new Bunny();b1.eating(10);}}class Bunny {String name; //成員變量public void eating(int num) { //局部變量String food = "胡蘿卜"; //局部變量System.out.println(name + "愛吃" + num + "根" + food);} }

輸出:

YES! null愛吃10根胡蘿卜
  • 舉個例子2(就近原則)
class BunnyTest {public static void main(String[] args) {System.out.println("YES!");Bunny b1 = new Bunny();b1.eating();}}class Bunny {String name;String food; //存儲在堆內存中public void eating() {String food = "胡蘿卜"; //存儲在棧內存中System.out.println(name + "愛吃" + food); //根據就近原則,選擇方法內的局部變量food} }

輸出:

YES! null愛吃胡蘿卜

注意事項


  • 局部變量名稱可以和成員變量名稱一樣,在方法中使用的時候,采用的是就近原則。
  • 基本數據類型變量包括:byte,short,int,long,float,double,boolean,char
  • 引用數據類型變量包括:數組,類,接口,枚舉

總結

以上是生活随笔為你收集整理的第三次学JAVA再学不好就吃翔(part21)--局部变量与成员变量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。