欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java成員變量與局部變量(動(dòng)力節(jié)點(diǎn)Java學(xué)院整理)

 更新時(shí)間:2017年04月06日 11:14:41   投稿:mrr  
這篇文章主要介紹了Java成員變量與局部變量的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下

成員變量

       我們來(lái)研究一個(gè)事物:

               屬性:外在特征;例如人的身高,體重

               行為:能夠做什么;例如人有說(shuō)話,打球等行為。

       而在Java語(yǔ)言中,最基本的單位是類(lèi),類(lèi)就是用來(lái)體現(xiàn)事物的。

       用類(lèi)class來(lái)描述事物也是如此:

               屬性:對(duì)應(yīng)類(lèi)中的成員變量

               行為:對(duì)應(yīng)類(lèi)中的成員函數(shù)

       定義類(lèi)其實(shí)就是在定義類(lèi)中的成員(成員變量和成員函數(shù))

      拓展:類(lèi)是一個(gè)抽象的概念,而對(duì)象就是類(lèi)的具體的存在,體現(xiàn)。例如:生活中的汽車(chē),可以看做一個(gè)類(lèi),我們稱(chēng)之為汽車(chē)類(lèi),每一臺(tái)車(chē)都有顏色和輪胎數(shù)(可以定義為屬性,即成員變量),每一臺(tái)車(chē)都可以跑(即車(chē)的行為,對(duì)應(yīng)類(lèi)總的成員函數(shù)),我們把汽車(chē)實(shí)例化一下,即會(huì)產(chǎn)生一個(gè)對(duì)象,比如奔馳、寶馬(BMW)。

Demo1:

public class Car {
  private String color; // 定義汽車(chē)顏色,全局變量
  private int numLuntai; // 定義汽車(chē)輪胎數(shù),全局變量
  public Car(String color, int numLuntai){
     super();
     this.color = color;
     this.numLuntai = numLuntai;
  }
  public void run() {
     System.out.println(this.numLuntai+ "個(gè)輪子的" +this.color + "轎車(chē)在馬路上行駛著");
  }
}
public class ClassTest {
  public static void main(String[] args){
     Car bmw = new Car("黑色", 4);  // 創(chuàng)建一個(gè)轎車(chē)對(duì)象,名字為bmw
     bmw.run();
  }
}

運(yùn)行結(jié)果:

4個(gè)輪子的黑色轎車(chē)在馬路上行駛著

      其中color和numLuntai就稱(chēng)為Car 類(lèi)的成員變量,這個(gè)屬性能夠用來(lái)描述一個(gè)類(lèi)的屬性,否則,它就應(yīng)該定義為局部變量。

      例如一個(gè)for循環(huán)中的i即是局部變量。            

 for(int i = 0; i < args.length; i++) {
       ......
     }

又例如寫(xiě)在成員方法中變量是局部變量。

Public class Car {
  private String color; // 定義汽車(chē)顏色,全局變量
  private int numLuntai; // 定義汽車(chē)輪胎數(shù),全局變量
  public Car(String color, int numLuntai){
     super();
     this.color = color;
     this.numLuntai = numLuntai;
  }
public void run() {
     String carName=”寶馬牌”; //這個(gè)就是局部變量
     System.out.println(this.numLuntai+ "個(gè)輪子的" +this.color + carName+"轎車(chē)在馬路上行駛著");
  }
}
publicclass ClassTest {
  public static void main(String[] args){
     Car bmw = new Car("黑色", 4);  // 創(chuàng)建一個(gè)轎車(chē)對(duì)象,名字為bmw
     bmw.run();
  }
}

結(jié)果:

4個(gè)輪子的黑色寶馬牌轎車(chē)在馬路上行駛著

成員變量和局部變量的區(qū)別

       成員變量:

          ①成員變量定義在類(lèi)中,在整個(gè)類(lèi)中都可以被訪問(wèn)。

          ②成員變量隨著對(duì)象的建立而建立,隨著對(duì)象的消失而消失,存在于對(duì)象所在的堆內(nèi)存中。

          ③成員變量有默認(rèn)初始化值。

      局部變量:

          ①局部變量只定義在局部范圍內(nèi),如:函數(shù)內(nèi),語(yǔ)句內(nèi)等,只在所屬的區(qū)域有效。

          ②局部變量存在于棧內(nèi)存中,作用的范圍結(jié)束,變量空間會(huì)自動(dòng)釋放。

          ③局部變量沒(méi)有默認(rèn)初始化值

      在使用變量時(shí)需要遵循的原則為:就近原則

      首先在局部范圍找,有就使用;接著在成員位置找。

列表對(duì)比:

       成員變量、局部變量的區(qū)別

 
成員變量
局部變量
定義位置
 在類(lèi)中,方法外
方法中,或者方法的形式參數(shù)
初始化值
有默認(rèn)初始化值
無(wú),先定義,賦值后才能使用
調(diào)用方式
對(duì)象調(diào)用
---
存儲(chǔ)位置
堆中
棧中
生命周期
與對(duì)象共存亡
與方法共存亡
別名
實(shí)例變量
---

小結(jié):

        盡管兩者者的本質(zhì)都是變量,可是使用時(shí)卻有相當(dāng)大的區(qū)別,稍不留神就可能陷入陷阱。且先記?。涸谝粋€(gè)類(lèi)中,如果一個(gè)變量能夠用來(lái)描述一個(gè)類(lèi)的屬性,那就定義為成員變量,否則,它就應(yīng)該定義為局部變量。

以上所述是小編給大家介紹的Java成員變量與局部變量(動(dòng)力節(jié)點(diǎn)Java學(xué)院整理),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的,在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 使用mybatis進(jìn)行數(shù)據(jù)插入時(shí)返回自增id的方法及注意點(diǎn)

    使用mybatis進(jìn)行數(shù)據(jù)插入時(shí)返回自增id的方法及注意點(diǎn)

    這篇文章主要給大家介紹了關(guān)于使用mybatis進(jìn)行數(shù)據(jù)插入時(shí)返回自增id的方法及注意點(diǎn),在插入一條數(shù)據(jù)之后需要返回它的自增主鍵id,因?yàn)椴迦氲膶?shí)體類(lèi)數(shù)據(jù)id為空,后面的邏輯還需要這個(gè)id,需要的朋友可以參考下
    2023-09-09
  • Java?hutool?List集合對(duì)象拷貝示例代碼

    Java?hutool?List集合對(duì)象拷貝示例代碼

    這篇文章主要介紹了Java?hutool?List集合對(duì)象拷貝的相關(guān)資料,文章還分享了在實(shí)現(xiàn)過(guò)程中遇到的一些問(wèn)題,并強(qiáng)調(diào)了閱讀源碼和正確配置CopyOptions的重要性,需要的朋友可以參考下
    2024-12-12
  • 深入探討Java超時(shí)自動(dòng)取消的實(shí)現(xiàn)方案

    深入探討Java超時(shí)自動(dòng)取消的實(shí)現(xiàn)方案

    在復(fù)雜的分布式系統(tǒng)中,超時(shí)控制是保障系統(tǒng)穩(wěn)定性和可用性的關(guān)鍵機(jī)制,本文將深入探討Java中實(shí)現(xiàn)超時(shí)自動(dòng)取消的多種方案,希望對(duì)大家有所幫助
    2024-11-11
  • springboot實(shí)現(xiàn)對(duì)注解的切面案例

    springboot實(shí)現(xiàn)對(duì)注解的切面案例

    這篇文章主要介紹了springboot實(shí)現(xiàn)對(duì)注解的切面過(guò)程,首先定義一個(gè)注解、再編寫(xiě)對(duì)注解的切面只是記錄的執(zhí)行時(shí)間和打印方法,可以實(shí)現(xiàn)其他邏輯,需要的朋友可以參考一下
    2022-01-01
  • java查找文件夾下最新生成的文件的方法

    java查找文件夾下最新生成的文件的方法

    在本篇文章中我們給大家分享了關(guān)于java怎么查找文件夾下最新生成的文件的相關(guān)方法和知識(shí)點(diǎn),有需要的朋友們參考下。
    2019-07-07
  • java實(shí)現(xiàn)將結(jié)果集封裝到List中的方法

    java實(shí)現(xiàn)將結(jié)果集封裝到List中的方法

    這篇文章主要介紹了java實(shí)現(xiàn)將結(jié)果集封裝到List中的方法,涉及java數(shù)據(jù)庫(kù)查詢(xún)及結(jié)果集轉(zhuǎn)換的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • 深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器

    深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器

    這篇文章主要介紹了深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • java實(shí)現(xiàn)四子棋游戲

    java實(shí)現(xiàn)四子棋游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)四子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Java開(kāi)發(fā)JUC交換器Exchanger使用詳解

    Java開(kāi)發(fā)JUC交換器Exchanger使用詳解

    這篇文章主要為大家介紹了Java開(kāi)發(fā)JUC交換器Exchanger使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • Mybatis-plus多條件篩選分頁(yè)的實(shí)現(xiàn)

    Mybatis-plus多條件篩選分頁(yè)的實(shí)現(xiàn)

    本文主要介紹了Mybatis-plus多條件篩選分頁(yè),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評(píng)論