• 1. 第1章 Java 语言概述
  • 2. 本章主要内容:1.1 Java 的起源 1.2 Java语言的特点 1.3 Java的运行机制 1.4 程序设计算法及描述 1.5 Java程序的开发过程
  • 3. 1.1 Java 的起源1991年4月Sun公司推动了一个绿色项目(Green Project),该项目旨在推出一种可以为家用消费电子类产品开发一个分布式代码系统。该项目基于C++开发了一种新的语言,其最大的优势在于跨平台,可做到“编写一次,随处运行”(Writing Once, Running Everywhere)。语言的创建者James Gosling将该语言命名为Oak(橡树),后来得知该名和其它语言重名,其他开发人员在咖啡屋休息时得到灵感,建议使用Java这个名字,得到了认同并沿用至今。 Sun在1995年5月的正式对外发布了Java语言。由于当时业界对于Internet的浓厚兴趣,Java迅速得到了广泛的关注和应用。
  • 4. Java发展过程 Java是由James Gosling领导的一个项目开发小组于1991年在Sun Microsystems公司设计出来的。 1995年1月,Oak被更名为Java。 2009年4月Sun公司被Oracle公司收购 1.1 Java 的起源
  • 5. 1.2 Java语言的特点3、跨平台 跨平台是指Java能运行于不同的软件平台和硬件平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口。 Java编译器能够产生一种于计算机体系结构无关的字节指令(Byte Code),只要安装了Java虚拟机,Java就可以在相应的处理机上执行。
  • 6. 1.3 Java的运行机制1、Java程序与Java虚拟机 Java编译器的输出采用了字节码形式。Java运行时系统称为Java虚拟机(Java Virtual Machine,JVM),JVM 就是一个字节码解释器。 将一个Java源程序编译成字节码文件,然后由Java虚拟机来执行这个字节码文件。利用Java虚拟机就可以把Java字节码程序跟具体的操作系统及硬件平台分隔开来。我们只要在各种平台上都实现Java虚拟机,任何Java程序就可以在该系统上运行。
  • 7. 图1.1 Java程序与虚拟机
  • 8. 1.3 Java的运行机制2、运行机制 Java虚拟机是Java语言的基础,它是Java技术的重要组成部分。Java虚拟机是一个抽象的计算机,它具有一个指令集并使用不同的存储区域。它负责执行指令,还要管理数据、内存和寄存器。Java解释器负责将字节代码翻译成特定机器的机器代码。 Java技术由Java源程序、Java字节码文件、Java虚拟机和Java类库(Java API)等四个方面组成。Java又可分为编译环境和运行期环境。
  • 9. 图1.2 Java技术的组成
  • 10. 在Java编译环境,编写好一个Java源程序(.Java),经Java编译器编译成字节码文件(.class)后,保存在磁盘。 在Java运行期环境,首先通过类装载器把编译好的字节码文件*.class及源程序中所引用了的类库Java API的字节码文件一并装载到内存方法区。
  • 11. 1.5 Java 的安装和配置1.5.1 JDK的下载与安装 1、JDK的下载 到Sun公司的官方网站下载Java JDK(Java Development Kit,简称JDK) 最新版本,免费。 2、Java的安装 Java JDK安装后的目录结构
  • 12. 3、Java开发环境的配置 在Window XP下,在“我的电脑”(点击右键)→弹出“系统属性”对话框→选择“高级”选项卡→单击“环境变量”按钮, Dt.jar,tools.jar由于版本升级不用配置了, 找到变量名“path”,其变量值加上“C:\Java\JDK6\bin;”。并列上。 1.5 Java的安装和配置
  • 13. 1.5.1 JDK的下载与安装 3、Java开发环境的配置 path 的作用(必须配置) classpath 的作用(可配置可不配置) 1.5 Java程序的开发过程
  • 14. 1.5.2 Java工具集与标准类库 1、Java工具集 Java为我们提供了创建和运行Java程序的工具,安装了Java的JDK后,这些工具都存放在bin目录下。 工具名称说  明javacJava编译器,用于将Java源程序编译成字节码文件javaJava解释器,用于解释执行Java字节码文件appletviewerApplet程序浏览器,用于测试和运行Applet程序javadocJava文档生成器
  • 15. 1.5.2 Java工具集与标准类库 2、Java API 在Java API中主要包括:核心Java包、javax扩展包和org扩展包。 其中:核心Java包 java.lang包:封装了所有应用所需的基本类。 java.awt包:封装了提供用户图形界面功能的抽象窗口工具类。 java.applet包:封装了执行Applet应用程序所需的类。 java.io包:封装了提供输入输出功能的类。 java.net包:封装了提供网络通信功能的类。 java.sql包:封装了提供管理和处理数据库功能的类。 java.math包:封装了常用数学运算功能的类。
  • 16. 1.5.2 Java工具集与标准类库 3、Java帮助文档 Java提供了非常完善的Java API文档 。 其网址为http://download.developers.sun.com.cn/javadoc/jdk6/docs/zh/api/index.html 。
  • 17. 1.5.3 Java程序的开发过程
  • 18. 1.5.3 Java程序的开发过程1、建立Java 源文件开发一个Java程序必须遵循下述基本原则: (1)Java区别大小写,即Public 和public是不同的修饰符。 (2)用花括号{}将多个语句组合在一起,语句之间必须用分号隔开。 (3)一个可执行的应用程序必须包含下述基本框架: (4)用上述框架的程序必须用文件名Test.java保存起来,即文件名必须与Public class 后的类名相同(包括相同的大小写),并使用.java作为扩展名。public class Test { public static void main(String args[]) { …; //程序代码 } }
  • 19. 1.5.3 Java程序的开发过程2、编译源文件 “编译”是将一个源代码文件翻译成计算机可以理解和处理的格式的过程。Java源程序编译后会生成一个字节码文件,即带扩展名.class的文件。 (1)点击桌面的“开始”菜单,选择“运行”,输入“cmd”命令,则打开Windows系统的命令控制台窗口。
  • 20. 1.5.3 Java程序的开发过程2、编译源文件 (2)在命令控制台窗口中,在提示符“ D:\workspace>”后面输入编译命令javac: javac Test.java 注意:如果当前目录不是“D:\workspace”,则应使用“cd”命令,进入到该目录。 如果编译成功,编译器就在包含Test.java文件所在的同一个目录下建立一个Test.class字节码文件。
  • 21. 1.5.3 Java程序的开发过程3、执行字节码文件 通过Java解释器java运行上述独立应用程序,可使用如下命令: D:\workspace>java Test  (按Enter键) 注意,命令行中的Test后面没有带扩展名。
  • 22. 1.5.3 Java程序的开发过程5、源文件命名规则 (1)如果源文件中只有一个类,那么源文件的名字必须与这个类的名字完全相同,扩展名为.java; (2)如果源文件中有多个类,那么这些类中只能有一个类在其类名前加上public,这时,源文件的名字与这个类的名字完全相同,扩展名为.java; (3)如果源文件中没有public类,则源文件的名字可以与其中的任意一个类名相同,扩展名为.java。 (4)类名一般以大写英文字母开头,后面可以是字母、数字等符号。类名的第一个字符不能是数字。
  • 23. 1.5.4 Java程序示例【例1-1】在命令窗口中显示输出内容的程序。(1)用编辑工具编写程序 class Example1_1 { public static void main(String[ ] args) { System.out.println("Java 语言入门很简单。\n明白了吗?"); } }将编写好的源程序保存为Example1_1.java。
  • 24. 1.5.4 Java程序示例【例1-1】在命令窗口中显示输出内容的程序。(2)编译程序: javac Example1_1.java 编译后,系统自动生成一个Example1_1.class字节码文件 。
  • 25. 1.5.4 Java程序示例【例1-1】在命令窗口中显示输出内容的程序。(3)执行程序: java Example1_1
  • 26. 1.5.4 Java程序示例【例1-1】在命令窗口中显示输出内容的程序。(4)程序说明:
  • 27. 1.5.4 Java程序示例【例1-2】输出语句System.out.println( )有“原样照印”及简单计算功能 。(1)用编辑工具编写程序 class Example1_2 { public static void main(String[ ] args) { System.out.println(" 5 + 3 = " +(5 + 3) ); } }将编写好的源程序保存为Example1_2.java。用双引号括起来的“5+3=”将按原样显示,称为“原样照印”。而没有用双引号括起来的(5+3)将进行加法计算。
  • 28. 1.5.4 Java程序示例【例1-2】输出语句System.out.println( )有“原样照印”及简单计算功能 。(2)编译程序: javac Example1_2.java 编译后,系统自动生成一个Example1_2.class字节码文件 。
  • 29. 1.5.4 Java程序示例【例1-2】输出语句System.out.println( )有“原样照印”及简单计算功能 。 (3)执行程序: java Example1_2 其运行结果在命令窗口中显示 。
  • 30. 1.5.4 Java程序示例【例1-3】应用输出语句的“原样照印”功能,输出一个用“*”号组成的三角形 。(1)用编辑工具编写程序 class Example1_3 { public static void main(String[ ] args) { System.out.println(" * "); System.out.println(" * * "); System.out.println(" * * * "); System.out.println(" * * * * "); } }将编写好的源程序保存为Example1_3.java。
  • 31. 1.5.4 Java程序示例【例1-3】应用输出语句的“原样照印”功能,输出一个用“*”号组成的三角形 。(2)编译程序: javac Example1_3.java 编译后,系统自动生成一个Example1_3.class字节码文件 。
  • 32. 1.5.4 Java程序示例【例1-3】应用输出语句的“原样照印”功能,输出一个用“*”号组成的三角形 。 (3)执行程序: java Example1_3 其运行结果在命令窗口中显示 。
  • 33. 1.5.4 Java程序示例【例1-4】在对话框窗体中显示输出内容 。(1)用编辑工具编写程序 import javax.swing.JOptionPane; class Example1_4 { public static void main(String[ ] args) { JOptionPane.showMessageDialog(null, "在对话框窗体中显示输出内容 !" ); } }将编写好的源程序保存为Example1_4.java。显示对话框窗口。
  • 34. 1.5.4 Java程序示例【例1-4】在对话框窗体中显示输出内容 。(2)编译程序: javac Example1_4.java 编译后,系统自动生成一个Example1_4.class字节码文件 。
  • 35. 1.5.4 Java程序示例【例1-4】在对话框窗体中显示输出内容 。 (3)执行程序: java Example1_4 其运行结果在命令窗口中显示 。