180 likes | 329 Views
Java 语言与面向对象程序设计教程. 嘉应学院数学系. 第一章 软件开发基础与 Java 语言概述. 1.1 软件开发基础 1.1.1 软件运行原理 计算机系统是由硬件和软件两大部分组成。 硬件:中央处理单元、数学逻辑单元、内存单元、输入单元、输出单元和外存单元组成。 软件:由程序、运行程序所需要的数据和文档三部分组成。 软件运行原理:软件加载到内存, CPU 依次从内存取出每一条指令顺序执行,从而完成程序员事先编写好的各种数据的处理、输入、输出等操作。. 1.1.2 操作系统与计算结构的发展 ( 1 )操作系统简介
E N D
Java语言与面向对象程序设计教程 • 嘉应学院数学系
第一章 软件开发基础与 Java 语言概述 • 1.1 软件开发基础 • 1.1.1 软件运行原理 • 计算机系统是由硬件和软件两大部分组成。 • 硬件:中央处理单元、数学逻辑单元、内存单元、输入单元、输出单元和外存单元组成。 • 软件:由程序、运行程序所需要的数据和文档三部分组成。 • 软件运行原理:软件加载到内存,CPU依次从内存取出每一条指令顺序执行,从而完成程序员事先编写好的各种数据的处理、输入、输出等操作。
1.1.2 操作系统与计算结构的发展 • (1)操作系统简介 • 功能:为应用程序提供处理机管理、内存管理、输入输出、设备管理及文件管理等,是应用程序与硬件之间的"接口"。 • PC机上常用的操作系统:DOS、Windows 98、Windows NT、UNIX、Linux 等。
(2)计算结构的发展(计算结构是指应用系统的系统体系结构,就是系统层次、模块结构)(2)计算结构的发展(计算结构是指应用系统的系统体系结构,就是系统层次、模块结构) • a. 主机 - 终端模式:集中运算和集中管理是主机 - 终端模式的特点。一台主机带多个终端。主机负担太重。 • b. 单机模式:个人计算机(PC)迅速发展,软件运行以孤立的机器进行。 • c. 客户机/服务器模式:具有分布运算和分布管理的特点。即服务器进行汇总、综合处理;客户机实现与用户的对话及客户端的工作处理。 • d. 浏览器/N层服务器模式:具有分布运算和集中管理的特点。由浏览器提供统一的用户界面。
1.1.3 软件开发过程与程序设计语言 • (1)软件开发过程 • 操作系统与系统软件的开发要求更加严谨、高效、安全和方便;开发人员需要具有精深的专业知识与技能。 • 应用软件的开发是针对某个具体问题或实体,专用性强,软件间的差异性大,需求量最多。应用软件开发能力一般包括: • a. 了解应用软件的背景知识 • b. 分析和了解应用软件的功能和要求 • c. 确定应用软件的计算结构 • d. 熟悉应用软件的工作运行环境 • e. 掌握开发应用软件的工具
(2)程序设计语言及其发展 • a. 面向机器的语言(各种机器语言和汇编语言) • b. 面向过程的语言(BASIC、FORTRAN、Pascal、C) • c. 面向对象的语言(C++、JAVA) • 注:历史上出现的编程语言达几百种之多
1.2 Java 语言概述 • 1.2.1 Java 的发展历史 • 1995年5月23日,Java这种定位于网络应用的程序设计语言正式推出。 • Sun公司是这样描述:Java 是一种简单的、面向对象的、强壮的、安全的、可移植的、高性能的、体系结构中立的、解释型的、多线索的、动态的语言。 • Java语言由语法规则和类库两部分组成。
JAVA技术的一些背景知识: • Sun公司将Java2(JDK1.2以后的版本统称为Java2)平台划分为3个版本: • J2ME:(Java 2 Platform Micro Edition),嵌入式系统的应用,PDA,手机等。 • J2SE:(Java 2 Platform Standard Edition),客户端程序的应用,同时也是其它两个版本的基础。 • J2EE:(Java 2 Platform Enterprise Edition),服务器端程序的应用。
1.2.2 Java 程序的开发过程与运行环境 • 1、 编写源程序 • 例 1.1 第一个 Java 程序:MyFirstJavaProgram.java • import java.io.* ;//引入以 java.io 开头的模块(统称为 java.io 包)到程序中。 • public class MyFirstJavaProgram//类头,用关键字 class 来标志一个类定义的开始。 • { //类体由大括号括起来。 • public static void main(String args[]) //main方法是主类标志 • {//方法体 • System.out.println("This is my first Java program ! "); • } • } • 注:Java程序都是由类或者说是类的定义组成的。
几个入门概念: • (1)Java 语言标识符的字母区分大小写; • (2)不允许在一个类的内部再定义另一个类,各个类之间必须是平行的,而不能嵌套;(???) • 注意:嵌套类在Java 的最初的1.0版本中是不允许的。直到Java 1.1 中才添加了嵌套类。 • (3)一个程序可以由一个或多个类组成,其中必须有也只能有一个主类(public类)。 • (4)源文件名必须与程序的主类名一致,并且以 .java 为其后缀。
2、 编译生成字节码 • Java引入编译的主要原因: • (1)保证程序的语法正确性; • (2)通过编译引入Java类库中已编写好的模块。 • (3)编译成功的结果将是一个或多个字节码文件,每个字节码文件对应源程序中定义的一个类,该文件的名字就是它所对应的类的名字,并以 .class 为统一的后缀名。 • 注意:编译型与解释型的区别!p12
JDK: • 1,什么是JDK? • JDK (Java Development Kit) • JDK 是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。 • 2,如何下载安装JDK? • 下载:http://java.sun.com/javase/downloads/index.jsp • 也可以利用搜索引擎在其它网站下载,推荐安装1.5以后版本。 • 3,编译和运行:javac.exe java.exe
3、 运行 • 运行一个编译好的 Java 字节码程序,需要调用 Java 的解释器软件 java.exe 。 • 解释运行的三个阶段: • (1)载入:Java解释器中的类载入器将字节码文件加载到内存(网上运行程序则通过网络下载到本地内存); • (2)代码校验:Java解释器中的代码检验器检查这些字节码的合法性; • (3)解释执行:合法的字节码程序由Java解释器逐句地解释运行。
JDK环境变量设置 • 我的电脑->属性->高级->环境变量: • 在“系统变量”中,设置3项属性: • 1,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建” • 2,JAVA_HOME:指明JDK安装路径,例如:C:\j2sdk1.4.2,此路径下包括lib,bin,jre等文件夹。 • 3,Path:使得系统可以在任何路径下识别java命令,设为: • %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin • 4,CLASSPATH:为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为: • .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (要加.表示当前路径)
1.2.3 Applet 与 Application • Java Application 程序的主要特点: • (1) Java Application 程序是独立完整的程序。 • (2)在命令行调用独立的解释器软件即可运行 Java Application程序。 • (3) Java Application 程序的主类必须有一个定义为: • public static void main(String args[]) • 的main方法,是 Java Application 程序执行的入口点。如例 1.1
例 1.2 第一个 Java Applet 程序:MyFirstJavaApplet.java • import java.applet.Applet;//引入类库中定义好的java.applet.Applet 类; • import java.awt.Graphics;//引入 java.awt.Graphics 类(图形类) • public class MyFirstJavaApplet extends Applet//主类必须是 Applet 类的子类 • { • public void paint(Graphics g) • { • g.drawString("This is my first Java Applet!",15,20); • } • }
(1) Java Applet 程序是在 WWW 浏览器环境下运行,即不是完整独立运行程序,而是已构建好的框架中的一个模块。 • (2) 运行 Java Applet 程序的解释器不是独立的软件,而是嵌在 WWW 浏览器中做为浏览器软件的一部分。 • (3) Java Applet 程序中不需要有 main 方法,但是 Java Applet 程序的主类必须是类库中已定义好的类 java.applet.Applet 的子类。 • (4) Java Applet 程序可以直接利用浏览器或 AppletViewer 提供的图形用户界面,而 Java Application 程序则必须另外书写专用代码来营建自己的图形界面。 • (5) Java Applet 更多的具体体现状态和状态之间的切换,而不是固定的顺序化的执行过程。
实验: • 1,安装、运行、熟悉JAVA的JDK环境 • 2,练习Java Application和Java Applet的设计,参考课本P11和P15编写java程序并运行