Java Code Compiler JVM for Windows Bytecode JVM



Java Code Compiler JVM for Windows Bytecode JVM for Linux JVM for Solaris JVM for Mac OS

Java架構 n Java 2 Platform Standard Edition 5. 0

n Java SE 6

n Java SE 7

n Java SE 8

Java的發展 具 n JDK – Java Development Kit n javac:將Java的原始程式編譯成為位元組碼的. class類別檔。 n n n java:解譯javac所編譯後的位元組碼,亦即. class類別檔。 n n n 範例:javadoc -d C: wshtml java. awt. event appletviewer:appletviewer能夠不透過瀏覽器執行Java Applet的程式。 n n 範例:jdb Hello javadoc:Java的文件產生器,從java原始檔中製作可由瀏覽器瀏覽的文件 說明檔。 n n 語法:java [-options] filename 範例:java Hello 或 java –cp %classpath%; new_path Hello jdb:Java的除蟲(Bug)程式。 n n 語法:javac [-classpathes][source code] 範例:javac Hello. java 或 javac –classpath 1; path 2 Hello. java 範例:appletviewer Hello. Applet. html 其他開發 具 n n n Net. Beans IDE, http: //www. netbeans. org Eclipse, https: //eclipse. org Borland JBuilder, http: //www. borland. com Gel, http: //www. gexperts. com/index. html JCreator, http: //www. jcreator. com

變數型態 (整數、浮點數、字元及布林變數) n 整數資料型態(Integer Types) Types Bit Range byte 8 -27 ~ 27 -1 short 16 -215 ~ 215 -1 int 32 -231 ~ 231 -1 long 64 -263 ~ 263 -1

n 浮點數資料型態(Floating Point Type) Type Bit Range float 32 1. 40239846 e-15 ~ 3. 40282347 e 38 double 64 4. 9406545841246544 e-324 ~ 1. 79769313486231570 e 308 n n n 要在兩種不相容的型態間產生轉換,必須利用強制型態轉換 例如: b =(double) a ; //a 可能是一個整數或浮點數 字元資料型態(Character Type) Type Symbol Example char ‘’ char a = ‘A’ ; char b = 65 ; char c = ‘u 0020’ ; String “” String a = “Java” ; 布林資料型態(Boolean Type) n 只有true和false兩種

n跳脫字元 Escape字元 Unicode碼 b u 0008 Backspace空白鍵 f u 000 C FF, Form Feed換頁符號 n u 000 A LF, Line Feed換行符號 r u 000 D CR, Enter鍵 t u 0009 Tab, 定位鍵 ’ u 0027 ‘, 單引號 ” u 0022 “, 雙引號 \ u 005 C , Backslash反斜線 說明

![n 資料型態及輸出範例 public class Ex 01_Data. Type { // 主程式 public static void main(String[] n 資料型態及輸出範例 public class Ex 01_Data. Type { // 主程式 public static void main(String[]](http://slidetodoc.com/presentation_image_h/bdcccbbc03ef32938b8da4fe66928dbf/image-13.jpg)
n 資料型態及輸出範例 public class Ex 01_Data. Type { // 主程式 public static void main(String[] args) { // 變數宣告 int i = 44; int j = 0256; // 顯示結果 System. out. print("44 = "); System. out. println(i); System. out. print("0256 = "); System. out. println(j); // 變數宣告 float ii = 25. 0 F; double jj = 0. 0123; double kk =. 00567; double ll = 1. 25 e 4; // 顯示結果 System. out. println(ii); System. out. println(jj); System. out. println(kk); System. out. println(ll); // 變數宣告 char a = 'A'; char b = 65; char c = 'u 0020'; String str = "Hello World!" ; // 顯示結果 System. out. println(a); System. out. println(b); System. out. println(c+str); System. out. print("換行符號n"); System. out. println(""Escape"逸出字元"); } }

n 資料輸入範例 import java. util. Scanner; // 主類別 public class Ex 01_Basic. IO { // 主程式 public static void main(String[] args) throws Exception { // 建立Scanner的輸入串流物件 Scanner input = new Scanner(System. in); String str ; char c ; int i ; long l ; float f ; double d ; System. out. print("Please input a sentences: "); str = input. next. Line(); // 讀取一列字串 System. out. println("以println印出輸入的資料: " + str); System. out. print("Please input a String: "); str = input. next(); // 讀取一個字串 System. out. print("以print印出輸入的資料: " + str);

System. out. print("Please input a Character: "); c = input. next(). char. At(0); // 讀取一個字串的第一個字元位元組 System. out. print("以print印出輸入的資料: " + c); System. out. println("Please input an Integer: "); i = input. next. Int(); System. out. println("以println印出輸入的資料: " + i); System. out. print("Please input a Long Integer: "); l = input. next. Long(); System. out. println("以println印出輸入的資料: " + l); System. out. print("Please input a float: "); f = input. next. Float(); System. out. println("以println印出輸入的資料: " + f); System. out. print("Please input a double: "); d = input. next. Double(); System. out. println("以println印出輸入的資料: " + d); } }


![n 運算子使用範例 public class Ex 01_Operator { // 主程式 public static void main(String[] args) n 運算子使用範例 public class Ex 01_Operator { // 主程式 public static void main(String[] args)](http://slidetodoc.com/presentation_image_h/bdcccbbc03ef32938b8da4fe66928dbf/image-18.jpg)
n 運算子使用範例 public class Ex 01_Operator { // 主程式 public static void main(String[] args) { // 變數宣告 int x, y, f, c; int inc = 10; int dec = 10; System. out. println("負號運算: -7 = " + -7 ); inc++; // 遞增 System. out. println("遞增運算: A++ = " + inc); dec--; // 遞減 System. out. println("遞減運算: A-- = " + dec); System. out. println("乘法運算: 5 * 6 = " + 5*6); System. out. println("除法運算: 7. 0 / 2. 0 = " + 7. 0/2. 0); System. out. println("餘數運算: 7 % 2 = " + 7%2); System. out. println("加法運算: 4 + 3 = " + (4+3)); System. out. println("減法運算: 4 - 3 = " + (4 -3));

// 測識字串合併 String str 1 = "Java是"; String str 2 = "一種物件導向程式語言"; System. out. println(str 1 + str 2); // 數學公式 x = 6; y = 3; f = x*x-2*x+3; System. out. println("x*x-2*x+3 = " + f); f = (x+y)*(x+y)+5; System. out. println("(x+y)*(x+y)+5 = " + f); c = 80; System. out. print("攝氏: " + c + "度= 華氏: "); System. out. println((9. 0 * c) / 5. 0 + 32. 0); // 測試關係運算子 int a = 7; int b = 5; System. out. println("小於: 7<5結果為 " + (a < b)); System. out. println("大於: 7>5結果為 " + (a > b)); System. out. println("小於等於: 7<=5結果為 " + (a <= b)); System. out. println("大於等於: 7>=5結果為 " + (a >= b)); System. out. println("等於: 7==5結果為 " + (a == b)); System. out. println("不等於: 7!=5結果為 " + (a != b));

// 測試條件運算子 boolean bln. A = a > b; boolean bln. B = a == b; System. out. println("A條件運算式: " + bln. A); System. out. println("B條件運算式: " + bln. B); System. out. println("NOT條件運算: !A 結果為 " + (!bln. A)); System. out. println("AND條件運算: A && B 結果為 " + (bln. A && bln. B)); System. out. println("OR條件運算: A || B 結果為 " + (bln. A || bln. B)); System. out. println("XOR條件運算: A ^ B 結果為 " + (bln. A ^ bln. B)); } } n 真值表 AND True False OR True False True T F True T T False F F False T F
- Slides: 20