JAVA教程第2章(控制台程序设计)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java程序运行环境架构
Java源代码 (.java文件)
Java编译器 JVM
Java字节码 (.class文件)
装载器
操作系统/ 硬件平台
字节校验器
Java解释器
JVM

虚拟机——用软件构造出来的计算机。它是通过在实际的计算机上仿真模拟各
种计算机功能来实现的。虚拟机有自己的指令系统,但没有硬件,它把虚拟代 码转换成相应的机器代码,再加以执行。
第2章 控制台程序设计
本章提要
◆ ◆ ◆ ◆ 面向对象思想 Java语言特点 Java运行环境 编写Java程序
本章知识要点

Java程序分类 Java开发环境与运行 类的定义 类的四个基本特性 接口
任务1 认识Java程序及其运行

什么是Java程序 Java开发环境及工具 计算机处理Java程序的过程
Java程序
例子: /* WelcomeApp.java*/ import ng.System; class WelcomeApp { public static void main(String args[]) { System.out.println("Welcome to Java World!"); } }
任务2 编写数字显示程序

问题分析 知识学习
类的抽象与封装 数据类型 常用类和包 定义Java类

任务实施
问题分析

任务描述:
编写一个程序,能够显示数字

问题分析:
Java程序构成,它是面向对象的语言,其程序由类组成的,需要了解类
的相关概念
编写Java程序的方法和步骤 确定显示数字所使用的数据类型,了解数据类型知识 编写代码 编译执行

知识学习——类的抽象与封装

面向对象的四个基本特征——抽象、封装、继承、多态。 抽象——从众多对象中抽出共同的、本质的属性和行为的过程。 封装——将类的属性和行为(即数据和方法)聚集在一起形成一个完整逻辑单
元的机制,只让可信的类或者对象操作,对不可信的进行信息隐藏。

继承——是类之间“一般”和“特殊”的关系,已有类(父类)可派生出新类 (子类),构成类的层次关系
2.CLASSPATH环境变量。作用是指定类搜索路径,JVM通过CLASSPTH来寻找类
的,从而我们可以使用已编写好的类。
3.JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat
等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。
装载:查找和导入类或接口的二进制数据; 链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选
择的;

校验:检查导入类或接口的二进制数据的正确性; 准备:给类的静态变量分配并初始化存储空间; 解析:将符号引用转成直接引用,如变量直接通过地址访问,方法也被 映射到内存的某个位置等待调用;
JVM处理示例Test.class的过程
输入命令:Java Test 确定jvm的路径和相关的参数配置
装载jvm.cfg文件,获得jvm.dll的路径
由LoadJavaVM来装入jvm.dll文件
获得JNIEnv实例
java.c中LoadClass方法装载该主类
由JNIEnv实例的方法调用主类中main方法

多态——表示同一事物的多种形态 面向对象——是一种程序设计思想,在程序空间内,利用数据抽象的方法对客 观世界的实体进行描述,即将一种数据结构和操作该数据结构的方法捆绑在一 起,封装在一个程序实体内,从而实现了数据封装和信息隐藏。
知识学习——类的抽象与封装

定义一个Java类
class ClassName {
JVM

类装载——指将包含在类文件中的字节码装载到JVM中, 并使其成为
JVM一部分的过程。即寻找一个类或是一个接口的二进制形式,并用该二 进制形式来构造代表这个类或是这个接口的class对象的过程,其中类或 接口的名称是给定了的。

类装载过程——装载、链接和初始化,其中链接又可以分成 校验、准备、解析三步:
JVM
Java栈有三个区域:局部变量区、运行环境区、操作数区
局部变量区:每个Java方法使用一个固定大小的局部变量集。
运行环境区:在运行环境中包含的信息用于动态链接,正常的方
法返回以及异常捕捉 操作数区:机器指令从操作数栈中取操作数,对它们进行操作,并 把结果返回到栈中 本地方法栈,当一个线程调用本地方法时,它就不再受到虚拟机关 于结构和安全限制方面的约束,它既可以访问虚拟机的运行期数据 区,也可以使用本地处理器以及任何——一个想象中的机器,在实际的计算机上通过软件模拟来
实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相 应的指令系统。

JVM的作用——它有自己的一套逻辑指令,JAVA源代码经过编译器编译以后,生 成虚拟机的逻辑指令集(.class文件),而JVM的任务就是将.class 文件装入 内存,并把这些.class 文件包含的伪指令解释为具体平台的机器指令,然后执 行。从这个意义上来说编译器是平台无关的,而JVM是平台有关的。如window平 台与linux平台上的JVM是不一样的。
ME(J2ME),microedtion,主要用于移动设备、嵌入式设备上的
java应用程序
Java开发环境(续)

在SUN的JDK中,不仅包含开发类库。同时,JDK也为用户提供了集成和 执行Java应用程序和小应用程序的工具。表中列出的就是它们所提供的 部分工具
工具 Javac编译器 作用 用于将Java源程序编译成字节码

JDK下载地址
/technetwork/java/javase/downloads/index.html

JDK的安装与系统环境配置
1、右击我的电脑选择——属性——高级——环境变量——系统变量
2、新建一个变量名为“CLASSPATH”,变量值为“C:\Program
Java开发环境

Java开发包
Java开发工具箱(JDK)是SUN的Java软件开发包。其中包含有实现
各种各样低层技术的类的集合,这些类提供了很多属性和方法。我 们可以在这之上开发Java应用程序。

JDK的三种版本
SE(J2SE),standard edition,标准版,通常用版本 EE(J2EE),enterprise edtion,企业版,用于开发J2EE应用程序
知识学习——类的抽象与封装

将客观世界的任何实体看作对象,则客观世界由各种“对象”组成,且有自己 的状态和行为,将具有相同特征和功能的对象归类,形成类,其中每个对象就 是这个类的一个实例。

类之间可通过继承关系构成类的层次结构,对象之间可通过消息相互作用,即
一个对象通知另一个对象完成一个允许作用于该对象的操作,而其操作细节被 封装,对外界不公开。 类和对象——是对对象的抽象及描述,是一些数据元素(属性)及其上操作 (方法)的聚集。对象则对应一个值。类与对象的关系相当于模式和它的实例 的关系。

Java虚拟机JVM(Java Virtual Machine)
它是一种可以运行Java字节码的虚拟的计算机,它是Java运行平台
的核心。Java源程序编译生成的字节码不能直接在操作系统平台上 运行,必须在Java虚拟机上运行。
任务1 认识Java程序及其运行

什么是Java程序 Java开发环境及工具 计算机处理Java程序的过程
初始化:利用类定义的代码对静态变量的初始化Java代码和静态
Java代码块。
JVM

运行引擎——负责执行包含在已装载的类或接口中的指
令 。
JVM区
Java堆——是一个运行时数据区,类的实例(对象)从中分配空间,它
的管理是由垃圾回收来负责的,程序员不能显式释放对象。Java不 规定具体使用的垃圾回收算法,可以根据系统的需求使用各种各样的 算法。 Java方法区——保存方法代码(编译后的java代码)和符号表(常量 池) 程序计数器——每个线程一旦被创建就拥有了自己的程序计数器。 当线程执行Java方法的时候,它包含该线程正在被执行的指令的地 址

Java程序

Java应用程序的特点是可以一次编译到处运行。
两大类型
应用程序(applications) 小应用程序(applets)


应用程序是可以独立在任何操作系统平台上执行的程序。
基于窗体的应用程序
基于控制台的应用程序

小应用程序是在Web页面内执行的Java程序,小应用程序需要浏览器支持。
4.如果安装了J2EE,也同样要加一个环境变量J2EE_HOME。
Java开发工具

JCreator JBuilder VisualAge For Java Sun ONE Studio Netbean Eclipse
任务1 认识Java程序及其运行

什么是Java程序 Java开发环境及工具 计算机处理Java程序的过程
Files\Java\jdk1.5.0_14;”。
4、打开系统变量“PATH”,在变量值后面添加“C:\Program
Files\Java\jdk1.5.0_14\bin;”
Java开发环境(续)

JDK安装与配置测试:
输入 Java -version
出现以下说明,则表示成功
java version "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-
b03
Java HotSpot(TM) Client VM (build 1.5.0_14-b03, mixed mode,
sharing)
Java开发环境(续)

关于系统环境配置变量的说明:
1.PATH环境变量。作用是指定命令搜索路径,在DOS命令行下面执行命令,如
javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到 相应的命令程序。
Java运行环境

Java运行环境
Java Runtime Environment(JRE) 是可以在其上运行、测试和传输应用程
序的 Java 平台。它包括 Java 虚拟机、Java 平台核心类和支持文件。如 sun公司的JRE包括: Java Runtime Environment 和 Java Plug-in
JVM工作过程


JVM是JDK的最底层,负责于操作系统的交互,用来屏蔽操作系统环境,提 供一个完整的java运行环境, 即虚拟计算机 JDK装入JVM的过程
创建jvm装载环境和配置 装载jvm.dll 初始化jvm.dll并挂界到JNIENV(JNI调用接口)实例 调用JNIENV实例装载并处理class类。
JVM区
方法区(常量池,成员和 方法数据以及方法、构造 方法的代码) (堆)
共享
类装载器子系统
堆 Java栈 共享 各线程独占 各线程独占 各线程独占
运行引擎
程序计数器 本地方法栈
JVM体系结构
常量池:虚拟机必须为每个被装载的类型维护一个常量池。常量池就是该类型所用到常量 的一个有序集和,包括直接常量(string,integer和 floating point常量)和对其他类型, 字段和方法的符号引用。
Files\Java\jdk1.5.0_14\lib\tools.jar;C:\Program Files\Java\jdk1.5.0_14\lib\dt.jar;.;”中间用分号隔开,若修改了安装目录的,则 需修改成相应目录。
3、再新建一个变量名为“JAVA_HOME”,变量值值为“C:\Program
//构造方法
//一个或多个属性 //一个或多个方法
Java解释器
appletviewer Javadoc Javah工具 jdb工具
Java解释器,用于解释执行Java字 节码
小应用程序浏览器,用于测试和运 行JavaApplet程序 Java文档生成器 C文件生成器,利用此命令可实现 在Java类中调用 C++代码 Java调试器
Java开发环境(续)
相关文档
最新文档