婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > 初學(xué)Java的備忘錄

初學(xué)Java的備忘錄

熱門標(biāo)簽:商丘百應(yīng)電話機(jī)器人有沒有效果 淮南騰訊地圖標(biāo)注 騰訊地圖標(biāo)注商戶改名注冊(cè)入駐 電話機(jī)器人的特色和創(chuàng)新 開封便宜外呼系統(tǒng)報(bào)價(jià) 地圖標(biāo)注人員兼職 漯河辦理400電話 黃石智能營(yíng)銷電銷機(jī)器人效果 怎樣把地圖標(biāo)注出來
雖然以前間或的也看了些書籍,但多是隔靴搔癢,上不了正席,絕不敢說自己懂Java。接觸一門新的技術(shù)和初戀一樣,都是第一次,但不同的是后者一般開始無比甜蜜,結(jié)局卻很痛苦,而前者則往往開始很痛苦,越到后來卻越是有味,簡(jiǎn)直是欲罷不能.現(xiàn)在我就正處于這個(gè)很痛苦的階段,連一個(gè)最簡(jiǎn)單的Helloworld都運(yùn)行不出來,總是提示Excepion in thread "main" java.lan.NoClassDefFoundError. 只好上網(wǎng)去查,去搜.記性又不好,所以搜出來趕緊保存下來,常備無患。

  一般來說安裝完JDK之后,一定要按一下步驟配置,才可正確編譯運(yùn)行(假定jdk版本為1.4.0)。

  1.將jdk1.4.0-安裝在自己機(jī)器的某個(gè)盤符的根目錄下,如:可安裝在C:\jdk下。

  ***(以下出現(xiàn)的c:\jdk改為你自己安裝JDK的目錄)***

  2.如果你的運(yùn)行環(huán)境是win98,則在C盤根目錄下,autoexec.bat文件中,加入下面兩條語句:

  set Path=%PATH%;c:\jdk\bin
  set CLASSPATH=.;c:\jdk\lib\dt.jar;c:\jdk\lib\tools.jar保存后,重新啟動(dòng)機(jī)器,就完成了jdk1.4的安裝。

  3.如果你的運(yùn)行環(huán)境是win2000的話,則需在“控制面板”的“系統(tǒng)”下,“高級(jí)”選項(xiàng)的“環(huán)境變量”中,添加兩個(gè)用戶變量。

  其中一個(gè)用戶變量的名稱為“path”,值為“.;d:\j2sdk1.4.0_01\bin”,另一個(gè)用戶變量的名稱為"CLASSPATH",值為“.;d"\j2sdk1.4.0_01\lib\dt.jar;d:\j2sdk1.4.0_01\lib\tools.jar”,單擊“確定”即可。即完成了jdk1.4.0的安裝。

  至于這樣做的意義何在,我想應(yīng)該是讓Java系統(tǒng)在編譯字節(jié)代碼(.java)的時(shí)候需要一個(gè)什么東東的支持,如果你不告訴它這個(gè)東東放在哪個(gè)地方的話,它就犯傻了?!

  看到屏幕上終于顯示出Hello world對(duì)我來說意義重大.這是我近一年來寫的第一個(gè)程序!再次踏上程序之路,簡(jiǎn)直有恍如隔世的感覺,已經(jīng)快找不準(zhǔn)我的位置了。還好原來學(xué)的一些關(guān)于C++和面向?qū)ο蟮钠っ珱]忘光光,所以費(fèi)點(diǎn)周折熟悉了JDK的環(huán)境之后,接下來的事情就好辦多了,心里也踏實(shí)多了。

  用String類直接定義字符串變量比起C中討厭的指針,感覺確實(shí)好的多,用慣了Object Pascal的我,如果再回去數(shù)* *,真要瘋掉不可。

  數(shù)組的定義和C,C++好像略有不同,記不清了,先記下來再說

  int[] number=new int[5]
  String[] message=new String[5]

  變量這一部分想起來要交待的也就這么多吧。雖然是菜鳥,但我也知道,總是如譚浩強(qiáng)般在語法上面死摳的人簡(jiǎn)直是白癡:大多數(shù)情況下,漂亮的程序根本不需要無謂的點(diǎn)綴,工工整整,思路清晰就可以了。

  倒是對(duì)于Java程序的框架我倒想備忘一下,一個(gè)簡(jiǎn)單的java程序好像是應(yīng)該是這樣的框架:

  class ProgramName
  {
  public static void main(String【】 args)
  {
  file://程序的主體
  }

  public static int othermethod()
  {
  file://其它方法
  }
  }

  整個(gè)程序在一個(gè)大的類中,這個(gè)類的概念應(yīng)該就跟pascal里面的單元差不多的。同pascal一樣,文件名也要與單元名-在這里是類名-一樣.Java對(duì)大小寫要求的非常嚴(yán)格,我語法錯(cuò)了好幾次都是因?yàn)檫@個(gè).

  Java程序就是由一個(gè)或者多個(gè)或者很多個(gè)方法在這樣一個(gè)大類當(dāng)中組成的.

  在如上的代碼中,定義方法的參數(shù)表示的意思分別為:

  public表示此成員函數(shù)是公有的,可以被其他類直接調(diào)用 static表示main成員函數(shù)在ProgramName類的所有對(duì)象中是唯一的,Java將為其分配永久存儲(chǔ)空間

  關(guān)于Static,我想再延伸一下。有時(shí)候我們創(chuàng)建一個(gè)類,希望這個(gè)類的所有實(shí)例都公用一個(gè)變量,也就是說,所有這個(gè)類的對(duì)象都只有實(shí)例變量的一個(gè)Copy.那么這樣一個(gè)靜態(tài)實(shí)例變量的內(nèi)存就不能在創(chuàng)建類的實(shí)例的時(shí)候分配了,因?yàn)榇蠹矣玫亩际沁@么一個(gè),不需要再重新分配.因此Java為其分配永久存儲(chǔ)空間。

  比如:

  class Block{
  static int number=50
  }

  這樣定義之后,所有Block類的實(shí)例,不管是Block1,還是Block2,它們都訪問同一個(gè)number.這個(gè)number叫做類的變量,而不是實(shí)例變量.實(shí)際上靜態(tài)變量又叫做類變量。

  繼續(xù)深入:用Static定義的靜態(tài)成員函數(shù)或者靜態(tài)變量,可以通過其所屬類名來直接調(diào)用.為什么可以這樣?因?yàn)榧热贿@個(gè)類的所有對(duì)象都是使用的這一個(gè)變量,那么理所當(dāng)然我不需要去從其中的任何一個(gè)對(duì)象去引用它,而只是通過類名引用就可以了嘛.這樣不是可以方便的實(shí)現(xiàn)一些全局函數(shù)和全局變量嗎?把所有全局的函數(shù)或者全局的變量都定義在一個(gè)靜態(tài)類中,調(diào)用的時(shí)候直接通過這一個(gè)類名就可以方便的訪問所有的全局變量和全局函數(shù)了。

  定義所有程序都要訪問的全局變量需要使用

  public final static

  另外碰到一個(gè)初學(xué)者經(jīng)常會(huì)遇到的問題

  non-static variable mainframe cannot be referenced from a static context

  即在靜態(tài)方法中不能引用非靜態(tài)變量

  為什么?

  因?yàn)槲覀冎漓o態(tài)的方法可以在沒有創(chuàng)建實(shí)例時(shí)使用,而申明為非靜態(tài)的成員變量是一個(gè)對(duì)象屬性,它只有在對(duì)象存在時(shí)引用,因此如果在對(duì)象未創(chuàng)建實(shí)例時(shí)我們?cè)陟o態(tài)方法中調(diào)用了非靜態(tài)成員方法自然是非法的,所以編譯器會(huì)在這種時(shí)候給各錯(cuò)誤.

  簡(jiǎn)單說來,靜態(tài)方法可以不用創(chuàng)建對(duì)象就調(diào)用,非靜態(tài)方法必須有了對(duì)象的實(shí)例才能調(diào)用.因此想在靜態(tài)方法中引用非靜態(tài)方法是不可能的,因?yàn)樗烤挂玫氖悄膫€(gè)對(duì)象的非靜態(tài)方法呢?編譯器不可能給出答案,因?yàn)闆]有對(duì)象啊,所以要報(bào)錯(cuò).

  最后我們看看Think in Java里面的精辟闡述,這個(gè)問題我想就非常非常的清楚了

  static關(guān)鍵字

  通常,我們創(chuàng)建類時(shí)會(huì)指出那個(gè)類的對(duì)象的外觀與行為。除非用new創(chuàng)建那個(gè)類的一個(gè)對(duì)象,否則實(shí)際上并未得到任何東西。只有執(zhí)行了new后,才會(huì)正式生成數(shù)據(jù)存儲(chǔ)空間,并可使用相應(yīng)的方法。

  但在兩種特殊的情形下,上述方法并不堪用。一種情形是只想用一個(gè)存儲(chǔ)區(qū)域來保存一個(gè)特定的數(shù)據(jù)——無論要?jiǎng)?chuàng)建多少個(gè)對(duì)象,甚至根本不創(chuàng)建對(duì)象。另一種情形是我們需要一個(gè)特殊的方法,它沒有與這個(gè)類的任何對(duì)象關(guān)聯(lián)。也就是說,即使沒有創(chuàng)建對(duì)象,也需要一個(gè)能調(diào)用的方法。為滿足這兩方面的要求,可使用static(靜態(tài))關(guān)鍵字。一旦將什么東西設(shè)為static,數(shù)據(jù)或方法就不會(huì)同那個(gè)類的任何對(duì)象實(shí)例聯(lián)系到一起。所以盡管從未創(chuàng)建那個(gè)類的一個(gè)對(duì)象,仍能調(diào)用一個(gè)static方法,或訪問一些static數(shù)據(jù)。而在這之前,對(duì)于非static數(shù)據(jù)和方法,我們必須創(chuàng)建一個(gè)對(duì)象,并用那個(gè)對(duì)象訪問數(shù)據(jù)或方法。這是由于非static數(shù)據(jù)和方法必須知道它們操作的具體對(duì)象。當(dāng)然,在正式使用前,由于static方法不需要?jiǎng)?chuàng)建任何對(duì)象,所以它們不可簡(jiǎn)單地調(diào)用其他那些成員,同時(shí)不引用一個(gè)已命名的對(duì)象,從而直接訪問非static成員或方法(因?yàn)榉莝tatic成員和方法必須同一個(gè)特定的對(duì)象關(guān)聯(lián)到一起)。

  Whoops!現(xiàn)在應(yīng)該回到主干上來了

  void 表示方法返回的值的類型為空。如果返回特定的類型的話,則該方法實(shí)際上就是函數(shù),否則就是一個(gè)過程而已.
您可能感興趣的文章:
  • ASP.NET操作Excel備忘錄
  • VBS備忘錄啟動(dòng)代碼
  • Vuex2.0+Vue2.0構(gòu)建備忘錄應(yīng)用實(shí)踐

標(biāo)簽:亳州 拉薩 馬鞍山 大興安嶺 岳陽 鄭州 武威 紅河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《初學(xué)Java的備忘錄》,本文關(guān)鍵詞  初學(xué),Java,的,備忘錄,初學(xué),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《初學(xué)Java的備忘錄》相關(guān)的同類信息!
  • 本頁收集關(guān)于初學(xué)Java的備忘錄的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 安阳县| 嘉峪关市| 台湾省| 林口县| 海口市| 乌鲁木齐县| 洞头县| 宣武区| 万年县| 长治县| 彝良县| 黎川县| 广东省| 和田县| 阳东县| 隆安县| 黄浦区| 原平市| 铜川市| 白朗县| 扎兰屯市| 思南县| 襄樊市| 德令哈市| 朝阳区| 靖宇县| 英山县| 南丰县| 平原县| 宜阳县| 韩城市| 龙南县| 开江县| 汾西县| 奈曼旗| 柘城县| 云浮市| 罗山县| 格尔木市| 清苑县| 和硕县|