最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳談Java靜態(tài)動(dòng)態(tài)的問題

 更新時(shí)間:2017年09月18日 10:00:47   投稿:jingxian  
下面小編就為大家?guī)硪黄斦凧ava靜態(tài)動(dòng)態(tài)的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

Cannot make a static reference to the non-static field

靜態(tài)方法中不能引用非靜態(tài)成員變量及方法

class A {
  private int a = 1;

  public sttaic void main(String[] args){
    System.out.println(a);
  }
}

因?yàn)閷?shí)例變量應(yīng)該是具體對象的狀態(tài),應(yīng)該先A a =  new A();然后System.out.println(a,a);

或者將變量改為static

No enclosing instance of type EventApp4 is accessible. Must qualify the allocation with an enclosing instance of type EventApp4 (e.g. x.new A() where x is an instance of EventApp4).

原因:內(nèi)部類沒有用static限定,所以是動(dòng)態(tài)的,而我在main函數(shù)中new了這個(gè)內(nèi)部類。為什么這樣就出現(xiàn)問題了呢,因?yàn)殪o態(tài)的方法以及變量在類加載之時(shí)就已經(jīng)進(jìn)入內(nèi)存了,但是非靜態(tài)的方法和變量只能在實(shí)例化之后才會(huì)進(jìn)入內(nèi)存,所以在靜態(tài)方法中new非靜態(tài)的內(nèi)部類就會(huì)出錯(cuò),因?yàn)榇藭r(shí)這個(gè)內(nèi)部類還不存在呢。反之,在動(dòng)態(tài)方法中new靜態(tài)方法是不會(huì)出現(xiàn)錯(cuò)誤的,原因同樣,靜態(tài)的在非靜態(tài)的之前就已經(jīng)存在了。

從java的內(nèi)存機(jī)制去分析,首先當(dāng)你New 一個(gè)對象的時(shí)候,并不是先在堆中為對象開辟內(nèi)存空間,而是先將類中的靜態(tài)方法(帶有static修飾的靜態(tài)函數(shù))的代碼加載到一個(gè)叫做方法區(qū)的地方,然后再在堆內(nèi)存中創(chuàng)建對象。所以說靜態(tài)方法會(huì)隨著類的加載而被加載。當(dāng)你new一個(gè)對象時(shí),該對象存在于對內(nèi)存中,this關(guān)鍵字一般指該對象,但是如果沒有new對象,而是通過類名調(diào)用該類的靜態(tài)方法也可以。

遇到遇上問題時(shí),有以下原則

1.在main中,使用靜態(tài)方法靜態(tài)變量靜態(tài)類,即將變量、方法都限定為static

2.在main中,實(shí)例化本類或其他類(要使用的類)

3.將main中的語句放進(jìn)構(gòu)造函數(shù)中,在main中實(shí)例化本類,因?yàn)闃?gòu)造函數(shù)中可以使用本類的引用this

以上這篇詳談Java靜態(tài)動(dòng)態(tài)的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java計(jì)算自然數(shù)中的水仙花數(shù)的方法分享

    java計(jì)算自然數(shù)中的水仙花數(shù)的方法分享

    這篇文章主要介紹了java計(jì)算自然數(shù)中的水仙花數(shù)的方法,需要的朋友可以參考下
    2014-03-03
  • IDEA新建bootstrap.yml文件不顯示葉子圖標(biāo)的問題

    IDEA新建bootstrap.yml文件不顯示葉子圖標(biāo)的問題

    這篇文章主要介紹了IDEA新建bootstrap.yml文件不顯示葉子圖標(biāo)的問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Mybatis中強(qiáng)大的resultMap功能介紹

    Mybatis中強(qiáng)大的resultMap功能介紹

    這篇文章主要給大家介紹了關(guān)于Mybatis中強(qiáng)大的resultMap功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Mybatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Eclipse中創(chuàng)建Web項(xiàng)目最新方法(2023年)

    Eclipse中創(chuàng)建Web項(xiàng)目最新方法(2023年)

    在Java開發(fā)人員中,最常用的開發(fā)工具應(yīng)該就是Eclipse,下面這篇文章主要給大家介紹了關(guān)于Eclipse中創(chuàng)建Web項(xiàng)目2023年最新的方法,需要的朋友可以參考下
    2023-09-09
  • Java?hutool?List集合對象拷貝示例代碼

    Java?hutool?List集合對象拷貝示例代碼

    這篇文章主要介紹了Java?hutool?List集合對象拷貝的相關(guān)資料,文章還分享了在實(shí)現(xiàn)過程中遇到的一些問題,并強(qiáng)調(diào)了閱讀源碼和正確配置CopyOptions的重要性,需要的朋友可以參考下
    2024-12-12
  • SpringBoot中yml多環(huán)境配置的3種方法

    SpringBoot中yml多環(huán)境配置的3種方法

    這篇文章主要給大家介紹了SpringBoot中yml多環(huán)境配置的3種方法,文中有詳細(xì)的代碼示例供大家參考,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-10-10
  • JavaIO?BufferedReader和BufferedWriter使用及說明

    JavaIO?BufferedReader和BufferedWriter使用及說明

    這篇文章主要介紹了JavaIO?BufferedReader和BufferedWriter使用及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 關(guān)于@Bean的使用方式

    關(guān)于@Bean的使用方式

    這篇文章主要介紹了關(guān)于@Bean的使用方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • java中注解的實(shí)現(xiàn)原理詳解

    java中注解的實(shí)現(xiàn)原理詳解

    這篇文章主要介紹了java中注解的實(shí)現(xiàn)原理詳解,注解也叫元數(shù)據(jù),例如我們常見的@Override和@Deprecated,注解是JDK1.5版本開始引入的一個(gè)特性,用于對代碼進(jìn)行說明,可以對包、類、接口、字段、方法參數(shù)、局部變量等進(jìn)行注解,需要的朋友可以參考下
    2023-10-10
  • 使用Spring AntPathMatcher的doMatch方法

    使用Spring AntPathMatcher的doMatch方法

    這篇文章主要介紹了使用Spring AntPathMatcher的doMatch方法,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09

最新評論

岳池县| 进贤县| 清流县| 昆明市| 合山市| 济宁市| 嘉峪关市| 河东区| 甘肃省| 浏阳市| 沙坪坝区| 错那县| 上林县| 铁力市| 于田县| 长宁区| 平顶山市| 安仁县| 海晏县| 北宁市| 江门市| 铁岭县| 金门县| 友谊县| 云浮市| 区。| 乐昌市| 封丘县| 杭锦旗| 灌阳县| 乌兰察布市| 易门县| 沈丘县| 将乐县| 周至县| 平阴县| 南溪县| 司法| 建水县| 邓州市| 邛崃市|