Presentation is loading. Please wait.

Presentation is loading. Please wait.

第二讲. Java基础.

Similar presentations


Presentation on theme: "第二讲. Java基础."— Presentation transcript:

1 第二讲. Java基础

2 内容 Java平台 Java程序结构 Java注释 Java语法 Java程序语言的数据类型 运算符 字符串 标准输入输出 控制结构
大数处理 数组 编码过程 2017/2/24

3 “WRITE ONCE, RUN ANYWHERE!”
1. Java 平台 debug “WRITE ONCE, RUN ANYWHERE!” pretty portable Program in Java Java Compiler Java Bytecode Java Virtual Machine Java Virtual Machine 2017/2/24

4 Java Virtual Machine (Java 虚拟机)
App1 App2 App3 App4 App5 Java Virtual Machine (Java 虚拟机) Windows Linux OS X Solaris Linux Intel PowerPC SPARC 2017/2/24

5 虚拟机是 Java 程序运行的统一平台 Java Virtual machine abstracts away the details of the underlying platform and provides a uniform environment for executing Java “byte-code” The Java compiler (javac) compiles Java code into byte-code (编译程序编译 Java 源程序为字节码) Bytecode is an intermediate form which can run on the JVM JVM does the translation from byte-code to machine-code in a platform dependent way. 2017/2/24

6 Core Language (核心语言) Class Libraries (类库) 2017/2/24
Ints, array, objects, loops and conditionals Moderately sized language Can run on small devices Class Libraries (类库) This is where the power of Java really emerges String, ArrayList, HashMap, … Networking, Graphics, XML, Database connectivity, Web Services…. Re-use at it’s best (so far). 2017/2/24

7 2017/2/24

8 2. Java程序结构

9 一个Java程序的基本框架结构 2017/2/24 Java Application程序:
例: HelloWorld.java public class HelloWorld     {     public static void main (String[] args)      { System.out.println(“Hello! World!”); }     } Java程序由一个或多个独立的类组成,但其中必须有一个公有类(如:HelloWorld),而且源代码文件必须与这个公有类的名字相同(如:HelloWorld.java) Java的类可以由一个或多个方法组成,其中公有类中的main方法可用作程序运行的入口。 2017/2/24

10 Java 程序的编辑、编译和运行过程 Java程序编译通过,会自动生成一个包含了这个源程序字节码的同名.class文件。该文件可以通过Java虚拟机运行。 开始使用JDK: javac HelloWorld.java 编译器  编译出 HelloWorld.class java HelloWorld 解释器 运行主类 2017/2/24

11 Java Programs (Java 程序)
You have to create a class! (创建一个类) You run the class (对类进行操作) for this to work, the class must have a method named main() that is declared as public static void main( Strings[] args) if you don't do this right, you see something like this when you try to run a class: Exception in thread "main" java.lang.NoSuchMethodError: main 2017/2/24

12 public static void main()
public: This method can be accessed (called) from outside the class. static: This method does not require that an object of the class exists. static methods are sort-of like "global" methods, they are always available (but you have to use the class name to get at them). void: no return value. 2017/2/24

13 main(Strings[] arg) main() will be passed an array of Strings corresponding to any command line parameter values. If you ran a program (class) like this: java Foo hi there dave then Foo.main() would be passed an array (with length 3) of String objects. The values would be "hi", "there" and "dave". args[0] is the String "hi", … 2017/2/24

14 简单的 Java 程序 /* 评论/注释 */ 包含文件 import java.io.*; import java.util.*;
/* 评论/注释 */ 包含文件 import java.io.*; import java.util.*; public class class_name { 主函数 public static void main( String[] args ) { 函数体开始 声明部分 执行部分 } 函数体结束 } 2017/2/24

15 撰写规范的程序代码 2017/2/24 // 程序说明 package 包的名称 import 类的名称 类修饰符 class 类的名称
构造方法 类成员:方法 (按照以下访问特性次序排列) public protected private protected private 类成员:域 (按照以下访问特性次序排列) 静态变量(即使用 static修饰符的。按照以下访问特性次序排列) 常量 (即使用static final修饰符的) 2017/2/24

16 Java 分隔符 Java分隔符组成: 圆点--“.”、分号--“;”、花括号--“{}”、空格--“ ” Java分隔符作用:
Java允许用花括号“{}”将一组语句括起来,形成一个语句块(block) Java程序源代码中各组成部分之间可以插入任意数量的空格,包括换行。 2017/2/24

17 完整 Java 程序的基本元素 1. 评论/注释语句 (/* */, // etc.)
2. 包含文件 (import java.io.*, …) 3. 赋值语句 (int i, float sum=0) 4. 简单输入/输出语句 (in, out) 5. 算术运算和逻辑操作 (+,-,*,\,) 6. 序列结构 7. 选择结构 (switch ~ case ~break, if ~ else) 8. 循环结构 (do~while, while, for, ) 9. 类和程序调用 2017/2/24

18 3. Java注释

19 Java 注释 Java语言中定义了三种注释形式:
// 单行注释----注释到行尾 /* 单行或多行注释 */ /** 可以用于文档化处理的单行或多行注释 */ JDK中提供了一个文档自动生成工具 javadoc,在自定义 类中 public 的成员前以/**…*/形式加入的注释内容均 可被自动提取到生成的说明文档中。 用法:somepath\javadoc source.java 2017/2/24

20 4. Java语法

21 java 语言的关键字 Java中一些赋以特定的含义、并用做专门用途的单词称为关键字(keyword)
所有Java关键字都是小写的,TURE、FALSE、NULL等都不是Java关键字 ; goto和const 虽然从未使用,但也被作为Java关键字保留; true, false, null虽被用做专门用途,但不是Java关键字; 2017/2/24

22 Class Type: package, class, abstract, interface, implements, native, this, super, extends, new, import, instanceof, public, private, protected, Data Type: char, double, enum, float, int, long, short, boolean, void, byte, Control Type: break, case, continue, default, do, else, for, go to, if, return, switch, while, throw, throws, try, catch, synchronized, final, finally, transient, strictfp Storage Type: register, static Other Type: const, volatile, 2017/2/24

23 5. Java程序语言的数据类型

24 Java数据类型划分 2017/2/24 整数类型(byte, short, int, long) 数值型
浮点类型(float, double) 基本数据类型 字符型(char) 布尔型(boolean) 数据类型 类(class) 引用数据类型 接口(interface) 数组 2017/2/24

25 (1)基本数据类型 Java中定义了四类/八种基本数据类型 逻辑型---- boolean 字符型---- char
整数型---- byte, short, int, long 浮点数型---- float, double 2017/2/24

26 2017/2/24 数据类型 关键字 占用位数 缺省值 取值范围 布尔型 boolean 8 false True,false 字节型
byte -128 ~127 字符型 char 16 ‘\u0000’ ‘\u0000’~ ‘\uFFFF’ 短整型 short -32768~32767 整型 int 32 见教材 长整型 long 64 浮点型 float 0.0F 双精度型 double 0.0D 2017/2/24

27 逻辑型 boolean类型适于逻辑运算,一般用于程序流程控制
boolean类型数据只允许取值true或false,不可以0或非0的整数替代true和false。 用法举例: boolean b = false; if(b==true) { //do something } 2017/2/24

28 字符型 char型数据用来表示通常意义上“字符” 字符常量是用单引号括起来的单个字符
char c = 'A'; Java字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示 char c1 = '\u0061'; Java语言中还允许使用转义字符'\'来将其后的字符转变为其它的含义 char c2 = '\n'; //代表换行符 2017/2/24

29 6. Java变量与标识符

30 变量 程序执行中数值可变的数据称为变量。变量包括变量名和变量值。
变量名  用标识符命名,对应一定数量的内存存贮单元,其单元数视变量类型而定。 标识符  符合一定命名规则的字符串序列。 2017/2/24

31 变量声明与赋值 2017/2/24

32 标识符(1) Java语言中,为各种变量、方法和类等起的名字称为标识符 Java标识符的命名规则: Java标识符大小写敏感,长度无限制
应以字母、下划线、美元符开头 后跟字母、下划线、美元符或数字 Java标识符大小写敏感,长度无限制 2017/2/24

33 Java标识符举例 2017/2/24 合法的标识符 不合法的标识符 HelloWorld class DataClass
_983 98.3 $bS5_c7 Hell World 2017/2/24

34 7. 运算符

35 -----------------------
算术运算 Operator + - * / % ++ -- Definition Addition Subtraction Multiplication Division (quotient) Division (remainder) Increment Decrement Example Num * 5 Sum / Count Count % 4 Count ++ Count -- 2017/2/24

36 Greater than or equal to
关系运算 Operator < <= > >= == != Definition Less than Less than or equal to Greater than Greater than or equal to Equal to Not equal to Example Num1 < 5 Num1 <= 5 Num2 > 3 Num2 >= 3 Num1 == Num2 Num1 != Num2 2017/2/24

37 对象相等性 2017/2/24 /: c03:EqualsMethod.java public class EqualsMethod {
public static void main(String[] args) { Integer n1 = new Integer(47); Integer n2 = new Integer(47); System.out.println(n1.equals(n2)); } } ///:~ //: c03:Equivalence.java public class Equivalence { public static void main(String[] args) { Integer n1 = new Integer(47); Integer n2 = new Integer(47); System.out.println(n1 == n2); System.out.println(n1 != n2); } } ///:~ //: c03:EqualsMethod2.java class Value { int i; } public class EqualsMethod2 { public static void main(String[] args) { Value v1 = new Value(); Value v2 = new Value(); v1.i = v2.i = 100; System.out.println(v1.equals(v2)); } ///:~ 2017/2/24

38 逻辑运算 2017/2/24 Operator ---------------- ! && || Definition
NOT AND OR Example ! ( Num1 < Num2 ) (Num1 < 5 ) && (Num2 > 10 ) (Num1 < 5 ) || (Num2 > 10 ) 注意:只能将AND, OR,NOT施加于boolean型上,否则出错 2017/2/24

39 Example ----------------------
位运算符 Operator & | ^ ~ Definition AND OR EXCLUSIVE OR ONE’S COMPLEENT Example 2&3=2 2|3=3 2^3=1 ~2=-3 2017/2/24

40 Example ----------------------
位移运算符 Operator << >> >>> Definition 左移 右移 无正负右移 Example i=2;i<<2=8 i=2;i>>2=0 i=-1;i>>>2= 2017/2/24

41 赋值运算 2017/2/24 Operator ---------------- == += -= *= /= %= Example
Num = 5 Num += 5 Num -= 5 Num *= 5 Num /= 5 Num %= 5 Meaning Store 5 in Num Num = Num Num = Num Num = Num * 5 Num = Num / 5 Num = Num % 5 2017/2/24

42 boolean-exp?value0:value 评估boolean-exp的值,决定使用value0还是value
if-else 三元运算符 Operator boolean-exp?value0:value Definition 评估boolean-exp的值,决定使用value0还是value Example i<10?i*100:i*10 2017/2/24

43 String上的+ Java不允许程序员实现自有的重载运算符 +字符串连接 如果表达式中有String,其他类型转变为String
2017/2/24

44 转型运算符 Java允许将任意基本型别转型为另一个任意基本型别,boolean例外
class型别不允许转型,同一族系,子类对象可以转型为父类对象 public class Concatenation { public static void main(String[] args) { String mango = "mango"; String s = "abc" + mango + "def" + 47; System.out.println(s); } } /* Output: abcmangodef47 *///:~ 2017/2/24

45 8. 字符串: String

46 String Class (字符串) public String( ); 2017/2/24
创建字符串常量String对象: String类的构造函数 public String( ); public String(String value); public String(StringBuffer buffer); public String(char value[] ); 创建Sring类的对象分两步:声明和创建 String s; s=new String(“agah”); or s=“java” 2017/2/24

47 2017/2/24 import static net.mindview.util.Print.*;
public class Immutable { public static String upcase(String s) { return s.toUpperCase(); } public static void main(String[] args) { String q = "howdy"; print(q); // howdy String qq = upcase(q); print(qq); // HOWDY } /* Output: howdy HOWDY *///:~ Java中字符串是不能被修改的 2017/2/24

48 String Class (字符串) 2017/2/24 字符串常量的操作:
public boolean startsWith(String prefix); public boolean endsWith(String suffix); public int length( ) public int indexOf(int ch) public int indexOf(int ch,int fromIndex); public int indexOf(String str); public int indexOf(String str,int fromIndex); public int lastIndexOf(String str); public int lastIndexOf(String str,int fromIndex); public int compareTo(String anotherString); public boolean equal(Object anObject); public boolean equalsIgnoreCase(String anotherString); public String concat(String str); …. 2017/2/24

49 9. Java标准输入输出简介

50 Scanner (标准输入) Scanner – gets values from the standard input and assigns them to Object import java.util.Scanner Scanner stdin = new Scanner( System.in ); stdin.next(), nextFloat(), nextInt(), nextLine()…. hasNext(); hasNextFloat(), …… 2017/2/24

51 2017/2/24 import java.util.*; public class BetterRead {
public static void main(String[] args) { Scanner stdin = new Scanner(System.in); System.out.println("What is your name?"); String name = stdin.nextLine(); System.out.println(name); System.out.println( "How old are you? What is your favorite double?"); System.out.println("(input: <age> <double>)"); int age = stdin.nextInt(); double favorite = stdin.nextDouble(); System.out.println(age); System.out.println(favorite); System.out.format("Hi %s.\n", name); System.out.format("In 5 years you will be %d.\n", age + 5); System.out.format("My favorite double is %f.", favorite / 2); } 2017/2/24

52 System.out.print (标准输出)
System.out.print – prints to the screen. Can also accept variables and print their values. %c – unicode character %d – Integral (as decimal) %b – Boolean vale %s – String %f – a float %e – a float (in scientific notation) %x – Integral(as hex) %% - the ‘%’ character (in printf) 2017/2/24

53 //: strings/SimpleFormat.java
public class SimpleFormat { public static void main(String[] args) { int x = 5; double y = ; // The old way: System.out.println("Row 1: [" + x + " " + y + "]"); // The new way: System.out.format("Row 1: [%d %f]\n", x, y); // or System.out.printf("Row 1: [%d %f]\n", x, y); } 2017/2/24

54 2017/2/24 空格和左对齐,缺省右对齐,加-后左对齐 //: strings/Receipt.java
import java.util.*; public class Receipt { private double total = 0; private Formatter f = new Formatter(System.out); public void printTitle() { f.format("%-15s %5s %10s\n", "Item", "Qty", "Price"); f.format("%-15s %5s %10s\n", "----", "---", "-----"); } public void print(String name, int qty, double price) { f.format("%-15.15s %5d %10.2f\n", name, qty, price); total += price; } public void printTotal() { f.format("%-15s %5s %10.2f\n", "Tax", "", total*0.06); f.format("%-15s %5s %10s\n", "", "", "-----"); f.format("%-15s %5s %10.2f\n", "Total", "", total * 1.06); } public static void main(String[] args) { Receipt receipt = new Receipt(); receipt.printTitle(); receipt.print("Jack's Magic Beans", 4, 4.25); receipt.print("Princess Peas", 3, 5.1); receipt.print("Three Bears Porridge", 1, 14.29); receipt.printTotal(); } } 空格和左对齐,缺省右对齐,加-后左对齐 2017/2/24

55 10. 流程控制

56 Statements (语句) 2017/2/24

57 if-else statement (选择结构)
2017/2/24

58 switch statement (选择结构)
2017/2/24

59 while loop (循环结构) 2017/2/24

60 for loop (循环结构) 2017/2/24

61 do-while loop (循环结构) 2017/2/24

62 return 指明某个函数即将传回之值,并令该指立即被传回 2017/2/24

63 11. Java语言大数处理

64 BigInteger 和 BigDecimal
如果开发人员仅仅需要处理64位以下的二进制数,他们只需要使用long或者int类型,如果开发者需要处理超过64位的二进制数,那么他们将需要使用java.math.BigInteger类 BigDecimal 由一个任意精度的整数值和一个非负的整数标度组成,整数标度代表小数点右边的十进制数字的个数(用 BigDecimal 表示的数值大小是 intVal/10**scale) Import java.math.BigInteger, BigDecimal Method: - ValueOf() - add() - subtract() - multiple() - divide() - mode() - compareTo() 2017/2/24

65 12. Java数组

66 数组 数组(Array)是在基本数据类型的基础上发展而来的一种较高级的数据结构类型,它是相同类型变量的集合,可以使用共同的名字对它进行引用。本节将具体对Java中的数组问题进行介绍。 一维数组 int month_days[ ]; int[ ] month_days = new int[30] 第一步,首先必须定义变量所需的类型 第二步,必须使用运算符new来为数组所要存储的数据分配内存,并将它们分配给数组变量 2017/2/24

67 多维数组 2017/2/24 在Java中,多维数组实际上就是“数组的数组”。在定义多维数组变量时,要将每个维数放在它们各自的方括号中。
例如,下面的语句声明了一个名为twoD的二维数组变量。 int twoD[][] = new int[4][5]; 该语句分配了一个4行5列的数组并把它分配给数组twoD。实际上这个矩阵表示了int类型数组的实现过程。 2017/2/24

68 多维数组 当给多维数组分配内存时,只需指定第一个(即最左边)维数的内存即可。你可以单独地对余下的维数进行内存分配。例如,下面的程序在数组twoD被定义时给它的第一个维数分配内存,对第二维则是手工分配内存。 int twoD[][] = new int[4][]; twoD[0] = new int[5]; twoD[1] = new int[5]; twoD[2] = new int[5]; twoD[3] = new int[5]; 2017/2/24

69 11. Java程序开发

70 (1)算法能力是软件核心能力 程序 (Program) = 算法 (Algorithm) + 数据结构 (Data Structure)
软件的价值 = 智力 IQ + 智力资产IP (Intellectual Properties) 个人用算法创造的价值可能超过成千上万人所创造价值总和 更高层次、更复杂问题的问题求解需要更高层次的算法形式,如谓词逻辑、量子模型或其它设计和表示模型,算法表示是无止境 2017/2/24

71 (2)设计模式概论

72 学习的模式 人类活动的许多领域的问题求解过程都与模式概念密切相关 想一下如何下棋的…??? 学习开发软件就像学下棋一样
事实上,教育的目的就是将学习的模式从一代传向下一代 想一下如何下棋的…??? 学习开发软件就像学下棋一样 虽然失败的后果经常并没有那么戏剧性! 2017/2/24

73 要成为一个象棋高手 首先必须学习规则 然后学习原理 但是,要想成为一个高手,你必须从其它大师的棋局中学习 而这种模式是成百上千的
棋子的名字,合法的移动等等 然后学习原理 棋子的大小,吃子的基本技术等等 但是,要想成为一个高手,你必须从其它大师的棋局中学习 这些棋局中包含了许多模式,你必须能够理解,记忆并且一次又一次的使用它 而这种模式是成百上千的 2017/2/24

74 成为一个编程高手 首先学规则 然后学习原理 但是,要想真正掌握软件设计,你必须学习其它高手的设计 而这样的模式也是成百上千的
算法,数据结构和程序语言 然后学习原理 结构化编程,模块化编程,面向对象编码等等. 但是,要想真正掌握软件设计,你必须学习其它高手的设计 这些设计中包含了那些需要理解,记忆和重复使用的模式 而这样的模式也是成百上千的 2017/2/24

75 设计模式 设计模式代表了对问题的解决方案,这些问题是在开发特定的软件时碰到的
“模式==某一背景下的问题/答案对” 模式表达了软件设计中关键要素之间的静态和动态结构,以及它们之间的协作关系 它们尤其对解决非功能性的问题有用 模式使我们能够重用成功的软件体系结构和设计 2017/2/24

76 (3) Java 语言的编程实践 Java 语言是程序设计入门的主导语言 对 Java 语言基本成分和基本功能的了解
具备基本的数据表示方法和计算机的基本操作,就能完成某些简单计算方法和算法的实现 在编写大量程序之后,才能感到运用自如 2017/2/24

77 (4)简单 Java 程序的开发过程 Program Designing & Coding for
Solving the Specific Problem with JAVA programming languages ( 使用 JAVA 编程语言来进行程序设计, 综合运用 JAVA 的基本结构来编写解 决一定难度问题的程序 ) 2017/2/24

78 编写 Java 程序 在 Java 程序中,类是 Java 程序的最小组成单位,一个程序由一个类 或 多个类组成,多个类可以包含在一个或多个 Java 文件中 在 Java 程序中,每一个 Java 文件只能包含一个公有类,在应用程序中,Java程序 必须包含一个公有类,公有类包含一个公有函数 main(),称为主函数,公有类的文件名必须与类名一致 2017/2/24

79 Java 程序文件的结构 版本和版本的声明 版权信息 文件名称 标识符 程序说明摘要 程序的版本号 程序的作者 程序的修改者 完成和修改日期
版本的历史信息 2017/2/24

80 Java 程序文件的结构 Import 文件的结构 调用类库 文件目录结构 Source File Directory
Target File Directory 2017/2/24

81 Java 程序文件的版示 版示虽然不会影响程序的功能,但会影响到程序的可读性。追求清晰、美观和简明的风格 行 空格 对齐 变量命名规则
类的版示 2017/2/24

82 Java输入输出 Java依据标准I/O模式,提供了System.in,System.out,System.err
import java.io.*; 输出:system.out.println(“”) 输入: 2017/2/24

83 import java.io.*; class Input {static InputStreamReader in;  static BufferedReader reader;  static    {in=new InputStreamReader(System.in);     reader=new BufferedReader(in);    }    static String readString()   {String s="";    try      { s=reader.readLine();            }         catch(IOException e)      {System.out.println(e);       System.exit(0);       }    return s;   }    static char readChar()    {char ch='a';     try        {         String s=readString();         ch=s.charAt(0);               }       catch(Exception e)         {System.out.println("输入的数据类型不对,程序将退出");          System.exit(0);         }     return ch;      }        static int readInt()   {String s=readString();    int i=0;    try{      i=Integer.parseInt(s);      }    catch(Exception e)     {System.out.println("输入的数据类型不对,程序将退出");      System.exit(0);     }     return i;   }  static double readDouble()   {String s=readString();    double d=0.0;    try    {d=Double.parseDouble(s);    }    catch(Exception e)     {System.out.println("输入的数据类型不对,程序将退出");      System.exit(0);     }     return d;   }  static float readFloat()   {    String s=readString();    float f=0.0f;    try    {     f=Float.parseFloat(s);     }     catch(Exception e)     { System.out.println("输入的数据类型不对,程序将退出");       System.exit(0);     }     return f;   } } 2017/2/24

84 (5)Java环境设置

85 Java运行环境的安装与配置 编写并运行Java程序,需要Java开发工具包(JDK,Java Development Kit)的支持。因此在编写自己的第一个Java程序前,读者需要先在自己的机器上安装JDK。 到目前为止,JDK的发展经历了JDK 1.0、JDK 1.1、JDK 1.2、JDK 1.3、JDK 1.4 、JDK 1.5、1.6 等几个版本。 2017/2/24

86 Install Java 2 Platform on Your Machine (安装 Java 2 平台)
Java Core Software (开发核心程序): Java Development Kit (JDK, such as JDK 1.6 or J2SE 6.0) Can be installed on different platforms (能被安装在不同平台): Unix/Linux Windows Mac OS 2017/2/24

87 Installing JDK 1.6 (安装 JDK 1.6)
Make sure you have space! (300 MB) Download the appropriate file from Run the file (start the installation) 2017/2/24

88 Set Up PATH Environment Variable (设置执行路径和开发环境)
Unix/Linux (C Shell) In ~/.cshrc, add script set path=(/usr/local/java/jdk1.6.0_06/bin $path) Windows XP Working Directory: c:\my_java_program In c:\my_java_program: (临时性的Java开发环境) SET PATH=c:\java\jdk1.6.0_06/bin;%PATH% 永久性的 Java 开发环境 Start – Control Panel – System – Advanced - Environment Variables – System Variables - Path Add: c:\java\jdk1.6.0_06/bin 2017/2/24

89 2017/2/24

90 CLASSPATH Environment Variable (CLASSPATH 环境变量)
The Java compiler and VM use the CLASSPATH environment variable to decide where to look for class definitions (Java code). For now it's enough the Java will look in the "current working directory". If your CLASSPATH is already set to something, you may need to add "." to it. ("." is the current directory ). 环境变量 Path 用于指定操作系统的可执行指令的路径 CLASSPATH ----用于指定Java的类文件存放路径。 SET CLASSPATH=.;%CLASSPATH% 2017/2/24

91 CLASSPATH的设置 2017/2/24

92 Test Java Development Environment (测试 Java 开发环境)
Use Command: path Use Command: java -version Use Command: javac -version 2017/2/24

93 Java环境的有关工具 1、java:解释器 2、javac:编译器 3、appletviewer:小应用程序浏览器
4、javah:头文件生成器 5、javadoc:API文档生成器 6、javap:类文件反汇编器 7、jdb:Java语言调试器 8 、jar: 压缩工具 …. 这些文件包括在/java/bin/目录中,并可以在任何目录中运行,前提是设置了运行程序的相应系统路径。 2017/2/24

94 Java环境的有关工具 2017/2/24 Sun JDK 命令行形式
Javac.exe——Java编译程序,负责检查Java源程序是否有语法错误并生成相应的字节码文件(基本名与源文件中类名同名、但扩展名为.class)。 命令格式为: Javac 文件名 . java Java.exe——Java解释器程序,负责解释执行Java Application 字节码文件。 命令格式为: Java 文件名 Javadoc.exe——提取注释的工具,可查找置入在程序里的特殊注释标记,还将毗邻注释的类名或方法名提取出来,以便用最轻的工作量,生成十分专业的HTML格式的Java程序文档。 AppletViewer.exe——模拟WWW浏览器运行Applet的应用程序,使用它调试程序,不需要反复调用庞大的浏览器。 命令格式为: AppletViewer 文件名.html 2017/2/24

95 Installing Java Library Source Code and Documents (安装库函数和文档)
Enter the JDK directory (进入目录): c:\program file\java\jdk1.6.0_06 Construct a sub-directory (建立一个子目录) src mkdir src Change directory to src cd src Running the command jar xvf ..\src.zip 2017/2/24

96 Java Class Libraries (Java 内库)
2017/2/24

97 Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT) 2017/2/24

98 2017/2/24

99 2017/2/24

100 2017/2/24

101 2017/2/24

102 小结 Java平台 Java程序结构 Java注释 Java语法 Java程序语言的数据类型 运算符 字符串 标准输入输出 控制结构
大数处理 数组 编码过程 2017/2/24


Download ppt "第二讲. Java基础."

Similar presentations


Ads by Google