




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、ID:SCSJ001-Java Basic Syntax 注釋及分隔符、注釋及分隔符、JavaJava文檔化工具文檔化工具 標識符標識符 關鍵字關鍵字 JavaJava基本數據類型基本數據類型 JavaJava引用類型引用類型2011-05-032vJava語言中定義了三種注釋形式:語言中定義了三種注釋形式: / 單行注釋單行注釋-注釋到行尾注釋到行尾 /* 單行或多行注釋單行或多行注釋 */ /* 可以用于文檔化處理的單行或多行注釋可以用于文檔化處理的單行或多行注釋 */vJDK中提供了一個文檔自動生成工具中提供了一個文檔自動生成工具javadoc,在自定義在自定義類中成類中成public的
2、成員前以的成員前以/*/形式加入的注釋內容均形式加入的注釋內容均可被自動提取到生成的說明文檔中。可被自動提取到生成的說明文檔中。用法:用法:javadoc source.java vJavadoc只處理源文件在類只處理源文件在類/接口、方法、域、構造器接口、方法、域、構造器之前的注釋,忽略其他地方的注釋之前的注釋,忽略其他地方的注釋2011-05-033/*javadoc演示程序演示程序-JavaDoc*author Alex Wen*version 1.0 2003/12/15*/ public class JavaDoc /* *在在main( )方法中使用的顯方法中使用的顯示用字符串示用
3、字符串 *see #main(java.lang.String) */ static String SDisplay; /* *顯示顯示JavaDoc *param args 從命令行中從命令行中帶入的字符串帶入的字符串 *return 無無 */ public static void main(String args) SDisplay = Hello World ; System.out.println( SDisplay ); 2011-05-034v javadoc 注釋可以用于生成注釋可以用于生成API文檔文檔v 從從javadoc注釋中生成注釋中生成API文檔的時候,主要從以下幾項
4、內容中提取文檔的時候,主要從以下幾項內容中提取信息:信息: 包; 公有(public)類與接口; 公有(public)方法和受保護(protected)方法; 公有(public)屬性和受保護(protected)屬性。2011-05-035v常常在常常在javadoc注釋中加入一個以注釋中加入一個以“”開頭的標開頭的標記,結合記,結合javadoc指令的參數,可以在生成的指令的參數,可以在生成的API文檔中產生特定的標記文檔中產生特定的標記v常用的常用的javadoc標記標記 author:作者 version:版本 docroot:表示產生文檔的根路徑 deprecated:不推薦使用的方
5、法 param:方法的參數類型 return:方法的返回類型 see:參見,用于指定參考的內容 exception:拋出的異常 throws:拋出的異常,和exception同義2011-05-036vJavadoc命令格式:命令格式: javadoc options packagenames sourcefiles files 2011-05-037v 一條語句是以分號(一條語句是以分號(;)結尾的一行代碼)結尾的一行代碼v 一個語句塊是以一對花括號(一個語句塊是以一對花括號()為邊界的語句的集合)為邊界的語句的集合vJava中允許有任意多的空格中允許有任意多的空格 ,包括換行,包括換行20
6、11-05-038v標識符用作給變量、類和方法命名標識符用作給變量、類和方法命名v可以以可以以字母、下劃線“_”和和”$”符開頭符開頭v首字符外,可以跟上首字符外,可以跟上字母、下劃線“_”和和”$”符符或或數字vJava是大小寫敏感的,標識符也不例外是大小寫敏感的,標識符也不例外2011-05-039合法標識符非法標識符TeStHello WorldA11A_booleanbooleanA$CACa#變量String2011-05-03102021-12-21標識符、關鍵字、數據類型11 Java中一些賦以特定的含義、并用做專門用途的單詞中一些賦以特定的含義、并用做專門用途的單詞稱為關鍵字(
7、稱為關鍵字(keyword) 所有所有Java關鍵字都是小寫的,關鍵字都是小寫的,TURE、FALSE、NULL等都不是等都不是Java關鍵字關鍵字 ; goto和和const 雖然從未被使用,但也作為雖然從未被使用,但也作為Java關鍵字關鍵字保留;保留;v Java中一共有中一共有51個關鍵字,如下表所示個關鍵字,如下表所示abstractassertbooleanbreakbytecontinuecasecatchcharclass類constdoubledefaultdoextendselsefinal變量floatforgotolongifimplementsimport導包nati
8、venewnullinstanceofintinterfacepackage包privateprotectedpublicreturn返回值shortstatic靜態strictfpsuperswitchsynchronizedthiswhilevoidthrowthrowstransienttryvolatile2011-05-0312v Java是一門強類型語言。也就是說,所有的變量都必須是一門強類型語言。也就是說,所有的變量都必須顯式聲明類型。顯式聲明類型。v Java的數據類型分為兩大類:原始類型(的數據類型分為兩大類:原始類型(primitive type,也稱為簡單類型)和引用類型
9、(也稱為簡單類型)和引用類型(reference type)v 原始類型指的是一個數、一個字符或者一個原始類型指的是一個數、一個字符或者一個true/false值。值。它不提供任何與它們所持有的數據類型相關的行為。它不提供任何與它們所持有的數據類型相關的行為。v Java有有8種簡單類型。種簡單類型。2011-05-0313數據類型有效范圍(bits)數據類型有效范圍(bits)boolean1char16byte8short16int32long64float32double642011-05-0314數據類型簡單數據類型引用數據類型數值型字符型(char)布爾型(boolean)整數類型(
10、byte, short, int, long)浮點類型(float, double)類(class)接口(interface)數組2011-05-0315 boolean類型適類型適于邏輯運算,一般用于程序流程控制于邏輯運算,一般用于程序流程控制 boolean類型數據只允許取值類型數據只允許取值true或或false,不可以,不可以0或或非非0的整數替代的整數替代true和和false。 用法舉例:用法舉例:boolean b = false;if(b) /do something2011-05-0316 char型數據用來表示通常意義上型數據用來表示通常意義上“字符字符” 字符常量是用單引
11、號括起來的單個字符字符常量是用單引號括起來的單個字符 char c = A; Java字符采用字符采用Unicode編碼,每個字符占兩個字節,因編碼,每個字符占兩個字節,因而可用十六進制編碼形式表示(前綴為而可用十六進制編碼形式表示(前綴為u表示表示Unicode) char c1 = u0061; Java語言中還允許使用轉義字符語言中還允許使用轉義字符來將其后的字符轉變來將其后的字符轉變為其它的含義為其它的含義 char c2 = n; /代表換行符2011-05-0317轉義符含義Unicode值b退格(backspace)u0008n換行u000ar回車u000dt制表符(tab)u0
12、009“雙引號u0022單引號u0027反斜杠u005c2011-05-0318 JavaJava各整數類型有固定的表數范圍和字段長度,而不受具各整數類型有固定的表數范圍和字段長度,而不受具體操作系統的影響,以保證體操作系統的影響,以保證JavaJava程序的可移植性程序的可移植性 。類 型占用存儲空間表數范圍byte1字節 -128 127 -2727-1short2字節 -215 215-1 (-3276832767)int 4字節 -231 231-1 (-21474836482147483647)long8字節 -263 263-1 2011-05-0319v Java語言整型常量的三
13、種表示形式:語言整型常量的三種表示形式: 十進制整數,如12, -314, 0。 八進制整數,要求以0開頭,如012 十六進制數,要求0 x或0X開頭,如0 x12 v Java語言的整型常量默認為語言的整型常量默認為int型,如:型,如: int i =3;v 聲明聲明long型常量可以后加型常量可以后加 l 或或 L ,如:,如: long l = 3L;2011-05-0320vJava浮點類型浮點類型有固定的表數范圍和字段長度。有固定的表數范圍和字段長度。和整數類型一樣,在和整數類型一樣,在javajava中,符點類型的范圍中,符點類型的范圍與機器無關。與機器無關。類 型占用存儲空間表
14、數范圍float4字節 -3.403E383.403E38 double8字節 -1.798E3081.798E308 2011-05-0321vJava浮點類型常量有兩種表示形式浮點類型常量有兩種表示形式 十進制數形式,必須含有小數點,例如:3.14 314.0 .314 科學記數法形式,如3.14e2 3.14E2 314E2 vJava浮點型常量默認為浮點型常量默認為double型型,如要如要聲明一個聲明一個常量為常量為float型,則需在數字后面加型,則需在數字后面加f或或F,如:,如: double d = 3.14;float f = 3.14f;2011-05-0322v通常,我
15、們需要在不同的數據類型之間進行轉換。通常,我們需要在不同的數據類型之間進行轉換。v簡單類型除了簡單類型除了boolean類型以外,其他的數據類類型以外,其他的數據類型可以自動轉換成其他的數據類型,只要遵循如型可以自動轉換成其他的數據類型,只要遵循如下圖所示的原則:下圖所示的原則:byteshortcharintlongfloatdouble2011-05-0323v Java語言中除語言中除8種基本數據類型以外的數據類型稱為引用種基本數據類型以外的數據類型稱為引用類型類型 v 引用類型數據以對象的形式存在引用類型數據以對象的形式存在 v 引用類型變量的值是某個對象的句柄,而不是對象本身引用類型
16、變量的值是某個對象的句柄,而不是對象本身 v 聲明引用類型變量時,系統只為該變量分配引用空間,并聲明引用類型變量時,系統只為該變量分配引用空間,并未創建一個具體的對象未創建一個具體的對象 2011-05-0324public class public class StudentStudent String String name;name; String String sex;sex; int int grade;grade; int int age;age; Student( Student(StringString _name, _name, StringString _sex, _sex
17、, intint _grade, _grade, intint _age) _age) name = _name; name = _name; sex = _sex; sex = _sex; grade = _grade; grade = _grade; age = _age; age = _age; 2011-05-0325nullnullLisaLisaMaleMale1 11818s snamenamesexsexgradegradeageage0 xa7678760 xa7678765 50 xa7678760 xa7678765 5Student s = null;Student s
18、 = null;String name = s.getName();/String name = s.getName();/報錯,空指針異常報錯,空指針異常s = new Student (Lisa,Male,1,18);s = new Student (Lisa,Male,1,18);String name1 = s.getName();/String name1 = s.getName();/返回返回”Lisa”Lisa”Student s1 = s;Student s1 = s;棧堆LisaLisa0 xa7678760 xa7678765 5s1s12011-05-0326ID:SCS
19、J001-Java Basic Syntax2011-05-0327v成員變量成員變量/局部變量局部變量v值傳遞值傳遞vJava編碼規范編碼規范2011-05-0328v在在Java中,每個變量都有類型中,每個變量都有類型v在使用變量之前,必須先聲明變量的類型。類型在使用變量之前,必須先聲明變量的類型。類型可以是簡單類型,也可以是引用類型可以是簡單類型,也可以是引用類型v變量總是在一個類中聲明。但一個變量可能和整變量總是在一個類中聲明。但一個變量可能和整個類相關聯,個類相關聯,也可能只在方法體中或某個程也可能只在方法體中或某個程序塊中起作用序塊中起作用2011-05-0329public cl
20、ass test public void aMethod(int j)int m,n,k;String a = “aaaa”, b = “bbbb”;m = j;k = 100;System.out.println(m);System.out.println(n);/ErrorSystem.out.println(k);2011-05-0330public class testint i = 10,p=20;float f,j;f = 100.0fString s1,s2; 2011-05-0331v局部變量在使用之前,必須先初始化。局部變量在使用之前,必須先初始化。v全局變量如果沒有初始化就
21、拿來使用,系統將會全局變量如果沒有初始化就拿來使用,系統將會自動給它一個默認的初值。自動給它一個默認的初值。2011-05-0332byte0short0int0long0Lfloat0.0fdouble0.0dcharu0000booleanfalseobject refnull2011-05-0333vJava在參數傳遞時,只使用值傳遞在參數傳遞時,只使用值傳遞v當對象實例作為參數傳遞給方法時,這個參數的當對象實例作為參數傳遞給方法時,這個參數的值是對象的引用,而不是對象本身值是對象的引用,而不是對象本身s1s20 x1a4afb“Lisa”“male”1namesexgrade18age
22、0 x1a4afb0 x1a4afbs2=s12011-05-0334v再來看一個簡單類型數據傳值的例子再來看一個簡單類型數據傳值的例子v思考:打印出來的結果是什么?為什么?思考:打印出來的結果是什么?為什么?public class CallByValuePristatic void half(int n)n=n/2;System.out.println(half方法方法n=+n);public static void main(String args)int m=10System.out.println(Before the Invocation,m=+m);half(m);System.
23、out.println(After the Invocation,m=+m);2011-05-0335public class public class Test Test public static public static void void changeStr(String str)changeStr(String str) str= str=welcomewelcome; ; public static void public static void main(String args) main(String args) String str= String str=12341234
24、; ; changeStr(str); changeStr(str); System.out.println(str); System.out.println(str); /result: ”1234” why?/result: ”1234” why?2011-05-0336public class public class Test Test public static void public static void change(Student stu)change(Student stu) stu = new Student(); stu = new Student(); stu.set
25、Name(“zhangsan”); stu.setName(“zhangsan”); public static void public static void main(String args) main(String args) Student stu = new Student(“lisi”); Student stu = new Student(“lisi”); change(stu); change(stu); System.out.println(stu.getName(); System.out.println(stu.getName(); 2011-05-0337v在編寫在編寫
26、Java程序時,對于類名、變量名、包名、程序時,對于類名、變量名、包名、方法名等有一些約定俗成的寫法,這種寫法可以方法名等有一些約定俗成的寫法,這種寫法可以提高程序的可讀性,但這些編程風格并非必須。提高程序的可讀性,但這些編程風格并非必須。v應該避免使用一些毫無意義的字符來作為包名、應該避免使用一些毫無意義的字符來作為包名、類名、變量名以及方法名等類名、變量名以及方法名等2011-05-0338v Package (包包):package banking;package .tsinghua;v Class (類類)class Studentclass TestStudentv Interface (接口接口)interface Person;2011-05-0339v Method (方法方法)balanceAccount()deleteUser()v Variable (變量變量)currentCustomernameagev Constant (常量常量)HEAD_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《雨滴滋潤》課件
- 《華貿中心案例研究》課件
- 鐵路旅客運輸服務途中作業51課件
- 鐵路調車綜合實訓取送車輛作業課件
- 中華食材文化課件
- 中專職業形象課件設計
- 大學生職業規劃大賽《工商管理專業》生涯發展展示
- 版二手手機買賣合同樣本
- 施工項目款項結算合同
- 2025版鄭州二手房買賣合同指南
- 四川宜賓環球集團有限公司招聘筆試真題2024
- 自動駕駛開發到落地流程
- 收貨員的崗位試題及答案
- 國際工程招標招投標實務操作講義
- 數據治理管理制度
- 矩陣運算的新視角
- 人教版小學數學二年級下冊期中綜合素養測評A卷(1-5單元)(含答案)
- 2025年第六屆美麗中國全國國家版圖知識競賽測試題庫及答案
- 100以內加法減法口算1000題家庭練習打印
- 兩輪電動車知識培訓課件
- 2025年陜西省中級電工職業技能鑒定備考試指導題庫(含答案)
評論
0/150
提交評論