340 likes | 559 Views
Java 学习计划. 授课方式 多媒体授课、大信息量实例分析等教学方式。 ( 讲授 24 、上机 18 、习题 / 测验 6 、机动 3) 学时 , 计 51 学时。 考核方式 考查。以平时作业、上机和综合测试为准。 参考资料 《 用实例学 Java2》 电子工业出版社 《Java 编程思想 》 机械工业出版社 《Java 程序设计百事通 》 清华大学出版社. Java 汇总学习简介. Java 的基本课程 SL110 、 SL275 、 SL285 ( SUN 公司) Java 平台 J2SE — Java2 Standard Edition
E N D
Java学习计划 • 授课方式 多媒体授课、大信息量实例分析等教学方式。 (讲授24、上机18、习题/测验6、机动3)学时,计51学时。 • 考核方式 考查。以平时作业、上机和综合测试为准。 • 参考资料 《用实例学Java2》电子工业出版社 《Java编程思想》机械工业出版社 《Java程序设计百事通》清华大学出版社
Java汇总学习简介 • Java的基本课程 SL110、SL275、SL285(SUN公司) • Java平台 J2SE—Java2 Standard Edition J2EE—Java2 Enterprise Edition J2ME—Java2 Micro Edition • Java的实际应用 90%使用J2EE (J2SE是J2EE的子集)
第1章 Java语言概述 • 面向对象问题求解的提出 • Java编程语言的起源 • 面向对象问题求解概述 • 对象、类与实体 • 对象的属性与相互关系 • 面向对象的软件开发过程 • 面向对象程序设计方法的优点 • Java语言的执行过程分析 • Java程序开发工具与开发方法 • Java程序举例
1.1 面向对象问题求解的提出 • 面向对象问题的提出 以往的面向过程程序: 以数据结构和算法为设计核心。 缺点:不能清楚的表述多个关联的过程, 即解决问题的数据和过程是分离的。 • 面向对象技术的发展简介 1966年:首次推出的Simula I; 1980年:提出的Smalltalk-80语言; 同期:Lisp, Clascal, Object Pascal, C++等; 90年代:Java 返回
补充:Java编程语言的起源 • 最初命名为Oak(橡树) • 小组主要成员:Bill Joy, James Gosling • 最初目的:与家电一起使用 • 1994年,小组意识到Oak非常适合于Internet • 于1995年5月发布, 1996年第一个非试用版发布 • Java技术是免费的
补充:构建一种更好的语言 • 面向对象 • 分布式—可以在网上运行 • 多线程—出色的可同时运行多个进程 • 安全—禁止随意访问本地资源 • 预编写代码(API) • 独立于平台—易于移植并运行于不同平台
1.2 面向对象问题求解概述 面向对象程序设计的主要优点: • 对象的封装特性彻底消除了传统结构中数据与操作分离所带来的问题,提高了维护性等; • 对象的数据封装特性可分割私有数据和公有数据,减少了模块间干扰等,提高了可控制性; • 对象作为独立整体进行自身管理自己; • 对象可通过接口和相应的消息机制与外界相连; • 继承是面向对象方法中重要特性,它可方便地实现应用的扩展和已有代码的重复使用,提高了开发效率。 返回
现实世界 计算机世界 实体 映 射 对象 实例化 抽 象 计算机逻辑的实现 抽象数据类 概念世界 1.3 对象、类与实体 对象: * 现实世界的实体或概念在计算机逻辑中的抽象表示。 * 是具有唯一名和固定对外接口的一组属性和操作的集合,用来模拟组成或影响现实世界问题的一个或一组因素。 类 类:是同种对象的集合与抽象。 对象、实体与类 返回
1.4 对象的属性与相互关系 • 对象的属性 状态属性----静态属性----各种信息 行为属性----动态属性----各种操作 • 对象的关系 包含:当对象A是对象B的属性时,称对象B包含对象A; 继承:当对象A是对象B的特例时,称对象A继承了对象B; 关联:当对象A的引用是对象B的属性时,称对象A和对象 B之间是关联关系。 返回
1.5 面向对象的软件开发过程 • 面向对象的分析OOA • 面向对象的设计OOD • 面向对象的实现OOP • 面向对象的测试OOT • 面向对象的软件维护OOSM 综述: *分析用户需求,从问题中抽取对象模型; * 将模型细化,设计类并考察是否可引用已有类或部件 * 选定一种面向对象的编程语言,具体编码实现; * 程序测试及完善整个解决方案。 返回
1.6 面向对象程序设计方法的优点 • 可重用性 指一个软件项目所开发的模块,可在本项目或除本项目以外的项目中使用。 • 可扩展性 使得应用软件能够方便、容易地进行扩充和修改。 • 可管理性 因为软件开发使用类作为构建系统的部件,所以使整个项目的组织更加合理、方便。 返回
需求 分析 用户需求 设计开发 原型一 用户需求检验 修改、扩充、细化 原型二 用户需求检验 …… 最后完成系统 用户检验 快速原型法的开发过程 1.6 面向对象程序设计方法的优点 • 可重用性 • 可扩展性 • 可管理性
小 结 • 概述了面向对象软件开发的基础知识 面向对象问题求解的提出; 面向对象问题求解的基本过程。 • 了解对象的概念以及对象、类与实体的关系 • 掌握对象的属性----状态与行为 • 了解对象间的关联、包含、继承关系 • 面向对象的软件开发过程 OOA、OOD、OOP、OOT、OOSM • 面向对象的程序设计方法的优点 可重用性、可扩展性、可管理性
------ ------ --- ----- -- ------ 原代码(~.java文件) 程序员 检查错误,错? 编译器(javac.exe ) Y N 字节码 字节码 字节码 字节码 原代码变为字节码文件(~.class文件) 用户启动程序 (字节码.class文件) 用户 JVM JVM JVM 补充1 Java语言的执行过程分析
编译 解释执行 源代码 (.java文件) 字节码 (.class文件) Java运行系统 补充1 Java语言的执行过程分析 • Java语言是半编译半解释型语言。 1)首先编写Java源文件(.java文件); 2)经Java编译器编译形成为字节码文件(.class文件); 3)由解释执行系统完成解释和执行: 即字节码装入、字节码校验、字节码翻译和执行。
补充2 Java技术产品和术语 • Java虚拟机——JVM JVM是可以运行Java字节码的假想的计算机。 JVM是由指令集、寄存器组、类文件格式规定、堆栈、内存垃圾收集器和存储区等六部分组成。 利用JVM可以把Java字节码程序跟具体的软硬件平台分隔开来。只要根据JVM的规格描述,将Java解释器移植到特定的计算机上,就能保证在任何机器上编译的Java字节码文件都能在该系统上运行。 它是Java平台独立性的基础。
补充2 Java技术产品和术语 • Java运行期环境——JRE 只有JVM还不能运行Java的两种程序。 JRE是JVM加上Java平台核心类以及一些支持文件,方可构成Java的运行期环境。 • Java应用程序编程接口——API API它规定Java编程的规则(语法)。它包括了编程时可以利用的预编写的代码,即成百上千的类库。
补充3 Java开发环境的建立 • 从Internet下 • 载J2SDK • 安装SDK / JRE • 设置路径和环 • 境变量
Sun公司网站首页 Sun公司网站首页 软件下载区
选择Downloads链接进入界面 选择Downloads链接进入界面 所选下载文件
SDK和JRE下载界面 SDK和JRE下载界面
SDK主要的文件和文件夹的作用 • Readme__关于SDK最新信息及其目录内容说明; • index__HTML文件,提供SDK文档的链接、附带例子链接及到Javasoft的链接; • bin__存放Java的可执行文件; • lib__存放Java的类库文件; • include__存放Java标准的源代码; • demo__存放超过20例子的程序。
路径和环境变量的设置 • 设置路径 (PATH C:\jsdk1.5\bin); 在Autoexec.bat文件内假如设置语句: SET PATH=%PATH%; C:\jasdk1.5\bin (假设SDK安装在C:\jskd1.5\bin目录中) • 设置环境变量CLASSPATH 在Autoexec.bat文件中加入设置语句: SET CLASSPATH=%CLASSPATH; .; C:\j2sdk.1.5\CLASSPATH.ZIP CLASSPATH将指定Java字节码文件.class的缺省目录。 返回
1.7 Java程序举例 1.7.1源程序编辑 • 加载语句:import(类似于#include) • 类定义:class(必须小写) • 类体: 域(包括变量、常量、对象数组等) 方法(类似于函数的代码单元块) 特殊的方法: main。它是所有Java Application程序的执行入口点 方法main的书写格式: pubic static void main(String args[ ])
程序举例1 —MyJavaApplication.java import java.io.*; public class MyJavaApplication { public static void main(String args[ ]) { System.out.println(“Hello,Java World!”); } //行注释:end of main method } //end of class
1.7.2 字节码的编译生成 • Java中的字节码—编译产生的目标代码。 • 产生字节码的方法: 1)Visual J++中内部编译器完成 2)JDK(Java Develop Kit)开发工具完成 3)J2SDK(Java2 Standard Edition)开发工具完成 • Java编译原则: 对应源代码文件中定义的每个类,生成一个以这个类名字命名、以.class为后缀的字节码文件,源代码中定义了几个类,编译结果就生成几个字节码文件。
程序举例2 —MyApplication2.java import java.io.*; public classMyApplication2 { public static void main(String args[ ]) { System.out.println(UserClass.m_sMessage); } } classUserClass { static String m_sMessage=“Message from User Defined Class”; } 执行命令为: Javac MyApplication2.java 执行后将生成: MyApplication2.class UserClass.class 两个字节码文件。
编译 连接 运行 源代码 目标码 可执行代码 操作系统 (1)传统语言的运行机制 编译 解释执行 源代码 字节码 Java解释器 (2)Java语言的运行机制 1.7.3 字节码的解释与运行 高级语言的编译和解释 编译型语言----C, Pascal语言等 解释型语言----BASIC, QBASIC语言等
运行程序1、程序2的结果: 由JDK /J2SE1.4软件包中字节码解释器程序 java.exe运行: 程序1的运行命令为: java MyJavaApplication 程序1的结果为: Hello,Java World! 程序2的运行命令为: java MyApplication2 程序2的运行结果为: Message from User Defined Class
1.7 Java Application 小结 Java Application是由若干个类定义组成的独立的程序,其中必须有一个包含main方法的主类;执行Java Application时,需要使用独立的Java解释器来解释执行这个主类的字节码文件。
1.7 Java Application 小结 Java Application程序——完整程序 1 生成文本文件——文件名.java 2 生成字节码文件——javac 文件名.java 3 产生运行结果——java 文件名
第一次上机要求: • 上机编写、调试Java Application程序: (例题1,例题2) ; 掌握Java Application程序调试的操作步骤; • 学习进行设置路径和设置环境变量; • 学习使用SDK的帮助文档。
小结——必会知识 • 本门课程主要学习内容,今后应用开发时必备知识? • Java语言是什么语言,与其它高级语言有什么区分? • 面向对象的软件开发过程 • Java语言程序的执行过程 • Java的API、JVM和JRE的作用 • 对象的两种属性及其相互关系 • Java Application程序的建立和运行