標識符、關鍵字、數(shù)據(jù)類型_第1頁
標識符、關鍵字、數(shù)據(jù)類型_第2頁
標識符、關鍵字、數(shù)據(jù)類型_第3頁
標識符、關鍵字、數(shù)據(jù)類型_第4頁
標識符、關鍵字、數(shù)據(jù)類型_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

標識符、關鍵字、數(shù)據(jù)類型(上)ID:SCSJ001-JavaBasicSyntax標識符、關鍵字、數(shù)據(jù)類型(上)注釋及分隔符、Java文檔化工具標識符關鍵字Java基本數(shù)據(jù)類型Java引用類型2011-05-032Java注釋Java語言中定義了三種注釋形式:

//單行注釋----注釋到行尾

/*單行或多行注釋*/ /**可以用于文檔化處理的單行或多行注釋*/JDK中提供了一個文檔自動生成工具javadoc,在自定義類中成public的成員前以/**…*/形式加入的注釋內(nèi)容均可被自動提取到生成的說明文檔中。 用法:javadocsource.javaJavadoc只處理源文件在類/接口、方法、域、構(gòu)造器之前的注釋,忽略其他地方的注釋2011-05-033Java注釋(案例3-1)/***javadoc演示程序--<b>JavaDoc</b>*@authorAlexWen*@version1.02003/12/15*/

publicclassJavaDoc{/***在main()方法中使用的顯示用字符串*@see#main(java.lang.String[])*/

staticStringSDisplay;/***顯示JavaDoc*@paramargs從命令行中帶入的字符串*@return無*/

publicstaticvoidmain(Stringargs[]){SDisplay="HelloWorld";System.out.println(SDisplay);}}2011-05-034javadoc注釋(案例3-2)javadoc注釋可以用于生成API文檔從javadoc注釋中生成API文檔的時候,主要從以下幾項內(nèi)容中提取信息:包;公有(public)類與接口;公有(public)方法和受保護(protected)方法;公有(public)屬性和受保護(protected)屬性。2011-05-035javadoc注釋—javadoc標記常常在javadoc注釋中加入一個以“@”開頭的標記,結(jié)合javadoc指令的參數(shù),可以在生成的API文檔中產(chǎn)生特定的標記常用的javadoc標記@author:作者@version:版本@docroot:表示產(chǎn)生文檔的根路徑@deprecated:不推薦使用的方法@param:方法的參數(shù)類型@return:方法的返回類型@see:"參見",用于指定參考的內(nèi)容@exception:拋出的異常@throws:拋出的異常,和exception同義2011-05-036javadoc命令Javadoc命令格式:javadoc[options][packagenames][sourcefiles][@files]2011-05-037分割符一條語句是以分號(;)結(jié)尾的一行代碼 一個語句塊是以一對花括號({})為邊界的語句的集合Java中允許有任意多的空格,包括換行2011-05-038標識符標識符用作給變量、類和方法命名可以以字母、下劃線“_”和”$”符開頭首字符外,可以跟上字母、下劃線“_”和”$”符或數(shù)字Java是大小寫敏感的,標識符也不例外2011-05-039標識符(con.)合法標識符非法標識符TeStHelloWorldA11A_booleanbooleanA$CA@Ca#變量String2011-05-03102023/2/4標識符、關鍵字、數(shù)據(jù)類型11Java關鍵字/保留字Java中一些賦以特定的含義、并用做專門用途的單詞稱為關鍵字(keyword)所有Java關鍵字都是小寫的,TURE、FALSE、NULL等都不是Java關鍵字;goto和const雖然從未被使用,但也作為Java關鍵字保留;Java中一共有51個關鍵字,如下表所示Java關鍵字(con.)abstractassertbooleanbreakbytecontinuecasecatchcharclass類constdoubledefaultdoextendselsefinal變量floatforgotolongifimplementsimport導包nativenewnullinstanceofintinterfacepackage包privateprotectedpublicreturn返回值shortstatic靜態(tài)strictfpsuperswitchsynchronizedthiswhilevoidthrowthrowstransienttryvolatile2011-05-0312數(shù)據(jù)類型Java是一門強類型語言。也就是說,所有的變量都必須顯式聲明類型。Java的數(shù)據(jù)類型分為兩大類:原始類型(primitivetype,也稱為簡單類型)和引用類型(referencetype)原始類型指的是一個數(shù)、一個字符或者一個true/false值。它不提供任何與它們所持有的數(shù)據(jù)類型相關的行為。Java有8種簡單類型。2011-05-0313數(shù)據(jù)類型(con.)數(shù)據(jù)類型有效范圍(bits)數(shù)據(jù)類型有效范圍(bits)boolean1char16byte8short16int32long64float32double642011-05-0314數(shù)據(jù)類型的分類數(shù)據(jù)類型簡單數(shù)據(jù)類型引用數(shù)據(jù)類型數(shù)值型字符型(char)布爾型(boolean)整數(shù)類型(byte,short,int,long)浮點類型(float,double)類(class)接口(interface)數(shù)組2011-05-0315布爾類型boolean類型適于邏輯運算,一般用于程序流程控制

boolean類型數(shù)據(jù)只允許取值true或false,不可以0或非0的整數(shù)替代true和false。用法舉例:

booleanb=false; if(b){ //dosomething }2011-05-0316字符型(案例3-3)char型數(shù)據(jù)用來表示通常意義上“字符”字符常量是用單引號括起來的單個字符charc='A';Java字符采用Unicode編碼,每個字符占兩個字節(jié),因而可用十六進制編碼形式表示(前綴為u表示Unicode)charc1='\u0061';Java語言中還允許使用轉(zhuǎn)義字符'\'來將其后的字符轉(zhuǎn)變?yōu)槠渌暮xcharc2='\n';//代表換行符2011-05-0317特殊字符轉(zhuǎn)義符含義Unicode值\b退格(backspace)\u0008\n換行\(zhòng)u000a\r回車\u000d\t制表符(tab)\u0009\“雙引號\u0022\‘單引號\u0027\\反斜杠\u005c2011-05-0318整數(shù)類型Java各整數(shù)類型有固定的表數(shù)范圍和字段長度,而不受具體操作系統(tǒng)的影響,以保證Java程序的可移植性。類型占用存儲空間表數(shù)范圍byte1字節(jié)

-128~127-27~27-1short2字節(jié)

-215~215-1(-32768~32767)int4字節(jié)

-231~231-1(-2147483648~2147483647)long8字節(jié)

-263~263-12011-05-0319整數(shù)類型(con.)Java語言整型常量的三種表示形式:十進制整數(shù),如12,-314,0。八進制整數(shù),要求以0開頭,如012十六進制數(shù),要求0x或0X開頭,如0x12Java語言的整型常量默認為int型,如:inti=3;聲明long型常量可以后加‘

l’或‘

L’

,如:longl=3L;2011-05-0320浮點型Java浮點類型有固定的表數(shù)范圍和字段長度。和整數(shù)類型一樣,在java中,符點類型的范圍與機器無關。類型占用存儲空間表數(shù)范圍float4字節(jié)

-3.403E38~3.403E38double8字節(jié)

-1.798E308~1.798E3082011-05-0321浮點型Java浮點類型常量有兩種表示形式十進制數(shù)形式,必須含有小數(shù)點,例如: 3.14314.0.314科學記數(shù)法形式,如

3.14e23.14E2314E2Java浮點型常量默認為double型,如要聲明一個常量為float型,則需在數(shù)字后面加f或F,如:

doubled=3.14; floatf=3.14f;2011-05-0322各種整型數(shù)據(jù)類型的轉(zhuǎn)換(案例3-4)通常,我們需要在不同的數(shù)據(jù)類型之間進行轉(zhuǎn)換。簡單類型除了boolean類型以外,其他的數(shù)據(jù)類型可以自動轉(zhuǎn)換成其他的數(shù)據(jù)類型,只要遵循如下圖所示的原則:byteshortcharintlongfloatdouble2011-05-0323Java引用類型(案例3-5)Java語言中除8種基本數(shù)據(jù)類型以外的數(shù)據(jù)類型稱為引用類型引用類型數(shù)據(jù)以對象的形式存在引用類型變量的值是某個對象的句柄,而不是對象本身聲明引用類型變量時,系統(tǒng)只為該變量分配引用空間,并未創(chuàng)建一個具體的對象2011-05-0324一個引用類型的例子publicclassStudent{Stringname;Stringsex;intgrade;intage;Student(String_name,String_sex,

int_grade,int_age){name=_name;sex=_sex;grade=_grade;age=_age;}}2011-05-0325對象的構(gòu)造和初始化nullLisaMale118snamesexgradeage0xa76787650xa7678765Students=null;Stringname=s.getName();//報錯,空指針異常s=newStudent("Lisa","Male",1,18);Stringname1=s.getName();//返回”Lisa”Students1=s;棧堆Lisa0xa7678765s12011-05-0326標識符、關鍵字、數(shù)據(jù)類型(下)ID:SCSJ001-JavaBasicSyntax2011-05-0327標識符、關鍵字、數(shù)據(jù)類型(下)成員變量/局部變量值傳遞Java編碼規(guī)范2011-05-0328變量和它的作用范圍在Java中,每個變量都有類型在使用變量之前,必須先聲明變量的類型。類型可以是簡單類型,也可以是引用類型變量總是在一個類中聲明。但一個變量可能和整個類相關聯(lián),也可能只在方法體中或某個程序塊中起作用2011-05-0329變量聲明的例子(局部變量)publicclasstest{

publicvoidaMethod(intj) {

intm,n,k; Stringa=“aaaa”,b=“bbbb”; m=j; k=100; System.out.println(m); System.out.println(n);//Error System.out.println(k); }}2011-05-0330變量聲明的例子(全局變量)(3-6)publicclasstest{

inti=10,p=20;

floatf,j; f=100.0f Strings1,s2;…

…}2011-05-0331變量的初始化局部變量在使用之前,必須先初始化。全局變量如果沒有初始化就拿來使用,系統(tǒng)將會自動給它一個默認的初值。2011-05-0332全局變量的默認初值(案例3-7)TypeDefaultValueTypeDefaultValuebyte0short0int0long0Lfloat0.0fdouble0.0dchar‘\u0000’booleanfalseobjectrefnull2011-05-0333傳值(案例3-9)Java在參數(shù)傳遞時,只使用值傳遞當對象實例作為參數(shù)傳遞給方法時,這個參數(shù)的值是對象的引用,而不是對象本身s1s20x1a4afb“Lisa”“male”1namesexgrade18age0x1a4afb0x1a4afbs2=s12011-05-0334傳值(案例3-10)再來看一個簡單類型數(shù)據(jù)傳值的例子思考:打印出來的結(jié)果是什么?為什么?publicclassCallByValuePri{ staticvoidhalf(intn){ n=n/2; System.out.println("half方法n="+n); } publicstaticvoidmain(Stringargs[]){ intm=10 System.out.println("BeforetheInvocation,m="+m); half(m); System.out.println("AftertheInvocation,m="+m); }}2011-05-0335傳值publicclassTest{publicstaticvoidchangeStr(Stringstr){str="welcome";}

publicstaticvoidmain(String[]args){Stringstr="1234";changeStr(str);System.out.println(str);}}//result:”1234”why?2011-05-0336思考:傳值?publicclassTest{publicstaticvoidchange(Studentstu){stu=newStudent();stu.setName(“zhangsan”);}

publicstaticvoidmain(String[]args){Studentstu=newStudent(“l(fā)isi”);change(stu);System.out.println(stu.getName());}}2011-05-0337Java編程風格在編寫Java程序時,對于類名、變量名、包名、方法名等有一些約定俗成的寫法,這種寫法可以提高程序的可讀性,但這些編程風格并非必須。應該避免使用一些毫無意義的字符來作為包名、類名、變量名以及方法名等2011-05-0338Java編程風格(con.)Package(包):packagebanking;.tsinghua;Class(類)class Studentclass TestStudentInterface(接口)interfacePerson;2011-05-0339Java編程風格(con

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論