第一章 Java 程序设计技术 概述  什么是 Java 语言  一个简单的 Java 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档.

Slides:



Advertisements
Similar presentations
软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Advertisements

Java 大学实用教程 ( 第 3 版 ) 主讲:程继洪 第 1 章 Java 语言概述  本章导读 Java 语言的诞生Java 语言的诞生 学习 Java 的必要性 学习 Java 的必要性 Java 的特点及与 C/C++ 之关系Java 的特点及与 C/C++ 之关系.
第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行.
1 Java 语言程序设计 计算机系 鲍金玲. 2 引子 甲骨文 甲骨文是全球最大的信息管理软件及服务供应商,成立于 1977 年,公司总部 设在美国加利福尼亚州的红木城( Redwood Shores ),全球员工达 名, 包括 名开发人员、 7500 多名技术支持人员和.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
程序设计语言基础 软件工程系 秦晓燕. 课程目标 了解面向对象程序设计的思想,以及软件 开发流程。 学习 Java 语言的基本概念和编程方法,基 本掌握 Java 类库的使用。 能够利用所学的方法开发简单的小型应用 程序.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
JAVA 概述 主讲:张雷. J2ME API 地址: 广东科贸信息工程 张雷学习要求 了解各种程序设计语言及其特点 了解各种程序设计语言及其特点 了解 JAVA 的发展史和其特点 了解 JAVA 的发展史和其特点.
Java 程序设计(第二版) 普通高等教育 “ 十一五 ” 国家级规划教材 辛运帷等 编著 徐小平 主讲.
淮海工学院 计算机课程 第 1 章 Java 入门 1.1 Java 的起源与发展 1.2 Java 程序开发与运行环境 1.3 Java 程序设计步骤 1.4 Java 程序的构成 一个小游戏.
第三讲 面向对象(上).
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
1.2 Java程序开发与运行环境 Java程序文件类型 根据计算结构的不同,Java程序可以划分为:
Java程序设计教程 第一讲 Java概述.
Java的程式架構與基本觀念 Java語言的歷史 Java程式的開發環境 Java程式的架構 輸出與輸入物件之使用 工具使用方法介紹
四資二甲 第三週作業 物件導向程式設計.
Hello小程序的运行和编译 Java AppletJava小程序的构成 1、关键字
JAVA程序设计.
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
面向对象程序设计(Java) 徐志红
北京科技大学天津学院 信息工程系 面 向 对 象 程 序 设 计 第1讲 Java初探 主讲:于静.
计算机学院计算机科学与技术系 中德联合软件技术研究所 李波
第 13 章 套件 (Packages).
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
JAVA程序设计 (03) JAVA Programming
安裝JDK 安裝Eclipse Eclipse 中文化
第5章 面向对象程序设计 本章要点 5.1 面向对象程序设计概述 5.2 Java语言的面向对象程序设计 5.3 方法的使用和对象数组
JDK的安裝.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
武汉大学国际软件学院 面向对象程序设计 武汉大学国际软件学院
第一章 電腦、程式與JAVA.
程式設計實作.
CH09 套件 物件導向程式設計(II).
第一章 認識Java Java 程式設計入門(I).
2018/12/7 Java语言程序设计 教师:段鹏飞.
软件建模与UML.
Java基础入门 第1章 Java开发入门 · Java语言的特点 · Java开发环境的搭建 · 环境变量的配置 · Java的运行机制.
臺北市立大學 資訊科學系(含碩士班) 賴阿福 CS TEAM
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
2019/1/17 Java语言程序设计-程序流程 教师:段鹏飞.
第一章 Java语言概述.
二:JAVA开发环境的安装和配置.
認識 Java.
程式設計 老師:戴自強 助教:楊斯竣.
C/C++/Java 哪些值不是头等程序对象
两种不同类别的软件: 功能预定义软件;用户驱动的软件。他们对软件工程方法有不同的需求
* 單元:電腦與問題解決 主題:Java物件導向程式設計-類別與物件 台南縣國立善化高中 蕭嘉民 老師
01.Java语言概述 讲师:复凡.
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
1.1 Java簡述 1.2 Java下載與安裝 1.3 Java程式的開發過程 1.4 存檔說明 1.5 註解
面向对象 程序设计语言基础 马骏
JAVA 编 程 技 术 主编 贾振华 2010年1月.
《JAVA程序设计》 语音答疑 辅导老师:高旻.
開發Java程式語言的工具 JDK.
課程網站
程式設計 老師:蘇炳煌 助教:楊斯竣.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
第二章 基于CORBA的分布式平台 苗启广 计算机学院.
Interfaces and Packages
第6章 面向对象的高级特征 学习目标 本章要点 上机练习 习 题.
JAVA 程式設計與資料結構 第三章 物件的設計.
第2章 Java语言基础.
對於成員(member)存取權的限制 成員的資料被毫無限制的存取,任誰都可以指定任意值給成員,Java語言為了防止這種現象的產生,規定:有一種成員的資料不能任由類別外部的任何人隨意存取。
Usage Eclipse 敏捷方法工具介紹 實驗室網站:
第二章 Java基础语法 北京传智播客教育
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
Summary
Presentation transcript:

第一章 Java 程序设计技术

概述  什么是 Java 语言  一个简单的 Java 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档

什么是 Java 语言  前身是 1991 年由美国 Sun 公司的 Jame Gosling 、 Bill Joe 等人开发的 Oak 语言  Java 是一种功能强大的程序设计语言,既 是开发环境,又是应用环境,它代表一种 新的计算模式

什么是 Java 语言 面向对象的程序设计语言 与机器无关的二进制格式的类文件 Java 虚拟机(用来执行类文件) 完整的软件程序包(跨平台的 API 和库)

Java 语言的特点  语法简单,功能强大  类似于 C++ ,去掉了 C++ 中不常用且容易出错的地方  完全的面向对象  分布式与安全性  强调网络特性,内置 TCP/IP 、 HTTP 、 FTP 协议类库  三级代码安全检查机制  与平台无关  一次编写,到处运行

Java 语言的特点  解释编译两种运行方式  just-in-time 编译器,简称 JIT 编译器  多线程  动态执行  执行代码是在运行时动态载入的  丰富的 API 文档和类库

经典的系统架构  主机架构  集中处理,集中管理,各用户分享使用计算机 资源。这种模式下,可移植性差,扩充系统费 用较大  个人计算机( PC )  本地处理,本地管理,各用户独占系统资源, 管理维护费用直线上升

Java 的三层架构  Java 计算模式  结合了上述两种模式的优势,它可用于客户 / 服 务器架构,将公共使用的程序放到应用程序服 务器上,用户使用时从服务器上下载到客户端, 各用户独立使用设备和程序。当程序更新时, 只需在服务器上进行。不必在客户端做任何维 护工作,达到 “ 零管理 ” 的理想目标。

Java 语言的目标  创建一种面向对象的语言  提供一种解释环境  这可以缩短系统开发的编译-连接-装载-测 试周期,提高开发速度。  去掉了影响代码健壮性的功能  如指针结构及程序员负责的内存分配与释放。

Java 语言的目标  为程序运行多线程提供了方法  允许程序下载代码模块  在程序运行生命期内可以动态修改  检查下载的代码模块,提供了保证安全的 一种手段

Java 虚拟机  Java 虚拟机( Java virtual machine , JVM ) 是运行 Java 程序必不可少的机制。  编译后的 Java 程序指令并不直接在硬件系统的 CPU 上执行,而是由 JVM 执行。  JVM 是编译后的 Java 程序和硬件系统之间的接 口,程序员可以把 JVM 看作一个虚拟的处理器。 它不仅解释执行编译后的 Java 指令,而且还进 行安全检查。  JVM 是 Java 程序能在多平台间进行无缝移植的 可靠保证,同时也是 Java 程序的安全检验引擎。

Java 虚拟机  JVM 的定义  JVM 是在一台真正的机器上用软件方式实现的 一台假想机  JVM 的具体实现  指令集(等价于 CPU 的指令集)、寄存器组、 类文件格式、栈、垃圾收集堆、内存区  JVM 代码格式为压缩的字节码,效率较高  JVM 的实现叫做 Java 运行时系统或运行时环境 ( Runtime Environment ),简称为运行时

Java 虚拟机的性能  Java 解释器经过优化,字节码的执行速度 已有很大提高  在字节码执行之前先经过 JIT 编译器进行编 译,生成针对具体平台的本机执行代码。 执行效率可比解释执行的效率大幅度提高。 并仍不失跨平台的特点

Java 虚拟机的性能  Hotspot 技术  是 Sun 公司推出,为根本上解决 Java 程序的效 率问题。它提供对代码的运行时选择。在程序 执行时,对每个字节码指令进行分析,根据它 的执行次数,动态决定它的执行方式

垃圾收集  程序员不必亲自释放内存  后台系统级线程,记录每次内存分配的情况, 并统计每个内存指针的引用次数。  垃圾收集自动进行,无需用户释放内存, 消除了内存漏洞

代码安全 语言定义 public protected private final 取消指针 自动回收垃圾 bytecode 检查 限定对象的存取权限 系统堆栈溢出 参数类型一致 程序执行系统 WWW 浏览器 限制 Java 小应用程序的不正当使用 Java 源程序 (.java 文件 ) Java 编译器 Java bytecode(.class 文件 ) bytecode 下载器 bytecode 解释器 系统执行平台

代码安全  对于 Applet ,因其是从其他机器上通过网络 下载到本机执行的,程序中可能隐藏某些 非法操作,所以在 Applet 运行之前,系统要 对之进行严格的三级代码安全检查,即验 证、分析和跟踪监测。

代码安全  JDK 1.0 版本中,安全模型是所谓的 “ 沙箱 ” 模型  JDK 1.1 版本中,使用 “ 签名 Applet ”  Java 2 允许用户自己设定相关的安全级别

代码安全  Java 解释器  Java 解释器只能执行为 JVM 编译的代码  Java 解释器有三项主要工作: (1) 下载代码--由类下载器完成 (2) 校验代码--由字节码校验器完成 (3) 运行代码--由运行时解释器完成

代码安全  类下载器  从 Internet 网上下载类文件  类下载器把本地文件系统的类名空间和网络源 输入的类名空间区分开来,以增加安全性

代码安全  字节码校验器  检查代码的安全性,代码段的格式,并使用规则来 检查非法代码段  主要检查以下几项内容: (1) 类遵从 JVM 的类文件格式。 (2) 不出现访问违例情况。 (3) 代码不会引起运算栈溢出。 (4) 所有运算代码的参数类型总是正确的。 (5) 不会发生非法数据转换,如把整数转换为指针。 (6) 对象域访问是合法的。

开发环境  开发环境的安装  安装 JDK  设置环境变量 PATH = C:\Program Files\Java\jdk1.5.0\bin; CLASSPATH =. ; c:\ Program Files\Java\ jdk1.5.0\LIB;c:\Program Files\Java\ jdk1.5.0\demo

JDK 目录结构 C:\ Jdk1.5.0 bin lib javac java appletviewer 用户类文件所在目录 c:\java\examples\applications 当前目录 jre demo

Java 程序  Java 应用程序( Java Application )  Java 小应用程序( Java Applet )

Java 应用程序例 public class HelloWorldApp{ public static void main (String args[ ]) { System.out.println ("Hello World!"); } 编译命令 运行命令运行结果

程序的编译和运行  编译 源文件是文本形式的文件,经过编译,生 成二进制格式的字节码类文件  Java 编译器 : “ javac ” $ javac HelloWorldApp.java

运行  Java 的解释器是 “ java.exe ”  java 和 javac 一般放在 $JAVA_HOME/bin 目 录中,系统配置文件的 PATH 变量中应包含 该目录 $ java HelloWorldApp

常见错误  编译时错误  javac: Command not found 包含 javac 编译器的路径变量设置不正确  HelloWorldApp.java:3: Method printl (java.lang.String) not found in class java.io.PrintStream. System.out.printl (“Hello World!”); ^ 方法名 printl 不正确  HelloWorldApp.java:1: Public class HelloWorldapp must be defined in a file called "HelloWorldapp.java". public class HelloWorldapp{ ^ 文件定义的公有类 HelloWorldapp 的名字和文件名不匹配

常见错误  运行时错误  Can't find class HelloWorldApp 系统找不到名为 HelloWorldApp 的类文件  In class HelloWorldApp: main must be public and static main() 方法的左侧缺少 static 或 public  文件中含有的类个数错误 在一个源文件中只能定义一个公有类

常见错误  层次错误  解释:一个.java 源文件可以含有三个 “ 顶层 ” 元 素,这三个元素必须依次是: (1) 一个包说明,即 package 语句,可选 (2) 任意多个引入语句,即 import 语句 (3) 类和接口说明

常见错误  整体来看, Java 程序的结构如下:  package 语句:零个或 1 个,必须放在文件开始;  import 语句:零个或多个,必须放在所有类定 义之前;  公有的( public )类定义:零个或一个;  类定义:零个或多个;  接口定义:零个或多个; 源文件命名时,若文件中含有 public 类,源文件 必须与该类名字一致,注意区分大小写。

常见错误  正确的语句序列:  错误的语句顺序: package Transportation; import java.awt.Graphics; import java.applet.Applet; import java.awt.Graphics; import java.applet.Applet; package Transportation; 该例中在包说 明语句之前含 有其他语句

常见错误  错误的语句顺序: package Transportation; package House; import java.applet.Applet; 该例中含有两 个包说明语句

使用 Java API 文档  从 SUN 公司的网站上下载文档文件,假定 文件存放在 jdk 目录下,则在浏览器地址框 中输入 jdk\docs\index.html 即可以查看 JDK 文档。