第一讲 概述 1、程序设计语言 2、Java历史及发展 3、Java语言特点 4、Java开发环境 5、Java类库 6、Java程序.

Slides:



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

第 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 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档.
程序设计语言基础 软件工程系 秦晓燕. 课程目标 了解面向对象程序设计的思想,以及软件 开发流程。 学习 Java 语言的基本概念和编程方法,基 本掌握 Java 类库的使用。 能够利用所学的方法开发简单的小型应用 程序.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
软件编程基础 Java Applet 是另一类非常重要的 Java 程序, 虽然它的源代码编辑与字节码的编译生成过程与 Java Application 相同,但它却不是一类可以独立运 行的程序,相反,它的字节码文件必须嵌入到另一 种语言 HTNI 的文件中并由负责解释 HTML 文件的 WWW 浏览器充当其解释器,来解释执行.
Java 程序设计(第二版) 普通高等教育 “ 十一五 ” 国家级规划教材 辛运帷等 编著 徐小平 主讲.
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
Java程序设计教程 第一讲 Java概述.
Java的程式架構與基本觀念 Java語言的歷史 Java程式的開發環境 Java程式的架構 輸出與輸入物件之使用 工具使用方法介紹
四資二甲 第三週作業 物件導向程式設計.
Tool Command Language --11级ACM班 金天行.
Hello小程序的运行和编译 Java AppletJava小程序的构成 1、关键字
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
面向对象程序设计(Java) 徐志红
北京科技大学天津学院 信息工程系 面 向 对 象 程 序 设 计 第1讲 Java初探 主讲:于静.
计算机学院计算机科学与技术系 中德联合软件技术研究所 李波
第二部分 Java语言基础篇 第4章 Java语言与面向对象 (之一).
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
JAVA程序设计 (01) JAVA Programming
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
JAVA程序设计 (03) JAVA Programming
第2章 简单的JAVA 程序
第5章 面向对象程序设计 本章要点 5.1 面向对象程序设计概述 5.2 Java语言的面向对象程序设计 5.3 方法的使用和对象数组
Java Applet 介绍.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
第二讲 搭建Java Web开发环境 主讲人:孙娜
第一章 電腦、程式與JAVA.
CH09 套件 物件導向程式設計(II).
辅导课程六.
2018/12/7 Java语言程序设计 教师:段鹏飞.
Java语言程序设计 第八部分 Applet小程序.
Java基础入门 第1章 Java开发入门 · Java语言的特点 · Java开发环境的搭建 · 环境变量的配置 · Java的运行机制.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
第二章 Java语言基础.
2019/1/17 Java语言程序设计-程序流程 教师:段鹏飞.
第一章 Java语言概述.
Java 入门.
認識 Java.
第 1 章 Java 簡介.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
《JAVA程序设计》 语音答疑 辅导老师:高旻.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C语言程序设计 主讲教师:陆幼利.
第二章Java基本程序设计.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
開發Java程式語言的工具 JDK.
第1章 c++概述 1.1 C++语言的简史及特点 1.2 简单的C++程序 1.3 C++语言的基本组成
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
项目二:HTML语言基础.
本节内容 类成员的访问控制 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
辅导课程十五.
第6章 面向对象的高级特征 学习目标 本章要点 上机练习 习 题.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
JAVA 程式設計與資料結構 第三章 物件的設計.
Applet.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
Summary
Presentation transcript:

第一讲 概述 1、程序设计语言 2、Java历史及发展 3、Java语言特点 4、Java开发环境 5、Java类库 6、Java程序

1、程序设计语言 软件的基本组成部分是完成其功能的程序。 程序设计语言(也被称为“编程语言”,Programming Language)是人们编制程序所使用的语言。 程序描述了计算机处理数据、解决问题的过程,这是程序的实质。但程序的描述形式却可以是多种多样的,可以用不同的方式表述——不同的程序设计语言。

1、程序设计语言 程序设计语言的种类: 机器语言:机器指令,直接执行 汇编语言:符号化,汇编器(Assembler) 高级程序设计语言(编译型) 高级程序设计语言(解释型)

1、程序设计语言 ——高级程序设计语言 高级语言中用于描述计算的结构采用类似于数学中代数运算公式的形式,这种结构被称为“表达式”。程序中基本的动作单位被称为“语句”,不同的语句实现不同的功能。用高级语言书写的程序不可能直接地在计算机上执行,要在计算机上执行高级语言书写的程序,有两种基本方法: 编译(Compilation)执行:这种方法是设法把高级语言程序(也称为“源程序”)转换成为机器语言的可以由计算机直接执行的程序,即转变为“可执行(Executable)程序” 。 “解释”(Interpretation)执行:这种方法是即时把源程序转换为机器可执行的指令。有时为了提高效率,也可以先编译成一种中间代码。

1、程序设计语言 ——高级程序设计语言 对于“编译执行”方式,人们实现了高级语言“编译器”(Compiler)完成这种转换工作。编译器把高级语言程序看成是符合一定语法结构的符号串,对它进行加工变换。编译器对源程序的加工一般分为两个阶段:源程序首先被翻译成机器语言,这种翻译结果称为“目标码”(object code),目标码构成的程序片段称为目标模块。第二步,这些目标模块被与其他一些基本模块(由编译软件提供)连接在一起,最终形成“可执行程序”(executable program),这样的程序就可以在计算机上实际运行了。 第一个加工步骤称为“编译”(compiling),第二个步骤称为“连接”(linking)。

1、程序设计语言 ——高级程序设计语言 编 译 过 程

1、程序设计语言 ——高级程序设计语言 解 释 过 程 对于“解释执行” 方式,人们实现了一种称为“解释器”(Interpreter)的软件来完成转换工作。解释器在工作方式上与编译器不同,它不对源程序进行翻译,而是直接对源程序的语句进行分析和解释,实现源程序所描述的功能。 解 释 过 程

1、程序设计语言 ——高级程序设计语言 高级语言写出的程序是独立于任何具体的计算机的。但是“编译器”和“解释器”则是与机器相关的。同一种语言,对于不同的机器,需要不同的“编译器”和“解释器”。 人们已经开发出了许多不同的高级程序设计语言,不同的语言有各自不同的规范,因此需要专门的“编译器”和“解释器”。

1、程序设计语言 ——高级程序设计语言 FORTRAN(FORmular TRANslation)语言,HPF:IBM,1950 Pascal语言:N.Wirth,1968,(Delphi,Borland) COBOL(COmmon Business Oriented Language)语言: 美国国防部,1960 C和C++语言:Dennis Retchie, 1972; Bjarne Stroustrup,1983, Bell Basic(Beginner's All-purpose Symbolic Instruction Code)语言:美国国防部,1964 Ada语言:军用程序设计语言, 美国国防部, 1983 Java语言: 1991年,SUN MicroSystem公司

2、Java历史及发展 Java是一种解释型的、面向对象的编程语言。 历史:1991年,SUN MicroSystem公司的Jame Gosling、Bill Joe等人为在电视、控制烤箱等家用消费类电子产品上进行交互式操作而开发了一个名为Oak的软件。 Oak —> Java:互联网给Java带来新的生机 1995年Sun向公众推出Java并引起业界的轰动 发展:面向网络应用,类库不断丰富,性能不断提高,应用领域不断拓展。(1995年以来) 应用:Java是当今最流行的软件开发语言之一,Sun推出了 Java2 & J2EE使Java具有更广泛的用途,适用于各种应用开发,尤其是网络应用,网络服务,嵌入式系统等。

3、Java语言特点 —— (1) 面向对象 Java = “ C++ ” - “ 复杂性和奇异性 ” + “安全性和可移植性” —— (1) 面向对象 Java = “ C++ ” - “ 复杂性和奇异性 ” + “安全性和可移植性” Java语言是一个完全面向对象的语言,并且对软件工程技术有很强的支持 Java语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的接口模型。 对象中封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏; 类提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提供的方法,实现了代码的复用。

3、Java语言特点 —— (2)平台无关性 严格的语言定义:没有“依据机器的不同而不同” 或“由编译器决定”等字眼,最后的目标码都是一致的。 Java解释器生成与体系结构无关的字节码指令,只要安装了Java运行时系统,Java程序就可在任意的处理器上运行。这些字节码指令对应于Java虚拟机中的表示,Java解释器得到字节码后,对它进行转换,使之能够在不同的平台运行。

编译型和解释型语言的工作模式 pentium pentium pentium pentium 类、类库装载 (库)链接 编译器 二进制 Java编译器 Java解释器 二进制 Powerpc Powerpc Powerpc Powerpc 源 程 序 源 程 序 中间码 pentium pentium pentium pentium SPARC SPARC SPARC SPARC 类、类库装载 (库)链接

Java的编译与执行 调入包含、继承所用到的所有类, 内存分配确定,变成真正可执行的机器码 不存在伪造的指针 不违反访问权限 不非法访问对象 编译,没有绝对地址 Java源程序 (.java文件) Java编译器 Java Bytecode (.class文件) 系统执行平台 Bytecode 解释器 Bytecode 载入器 字节码校验器 不存在伪造的指针 不违反访问权限 不非法访问对象 不导致操作栈溢出

Java虚拟机 不同的操作系统有不同的虚 拟机。 它类似一个小巧而高效的CPU。 Bytecode代码是与平台无关的 是虚拟机的机器指令。 Interpreter(解释方式) Just-in-time(即时编译):有代码 生成器将字节代码转换成本机 的机器代码,然后可以以较高速度执行. Java interpreter Just-in-time compiler Runtime System Operating System Hardware

3、Java语言特点 —— (3)安全问题 Java是在网络环境下使用的语言,一个安全的网络至少要防止以下几种破坏的可能性: 毁灭系统资源 消耗系统资源 挖掘系统或个人机密 骚扰正常工作的进行

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

3、Java语言特点 —— (4)多线程 单线程程序一个时刻只能做一件事情,多线程程序允许在同一时刻同时做多件事情。 其它大多数高级语言,包括C,C++等,都不支持多线程,只能编写顺序执行的程序(除非有操作系统API的支持)。 Java提供现成的类Thread,只要继承这个类就可以编写多线程的程序。 多线程机制使应用程序能够并行执行,而且同步机制保证了对共享数据的正确操作。 通过使用多线程,程序设计者可以分别用不同的线程完成特定的行为,而不需要采用全局的事件循环机制,这样就很容易地实现网络上的实时交互行为。

3、Java语言特点 —— 其他 (5) 可移植性 (6) 分布性 (7) 高性能(相对于其他解释型语言) (8) 健壮性

4、Java开发环境 JDK 集成环境 j2eesdk-1_5_01-windows.exe j2sdk-1_5_2_04-nb-3_6-bin-windows.exe j2sdk-1_5_2-doc.zip 集成环境 Jbuilder (Borland) Visual J++ (Microsoft) WSAD …

4、Java开发环境 安装JDK后产生如下目录结构: \bin目录:Java开发工具,包括Java编译器、解释器等 \demo目录:一些实例程序 \lib目录:Java开发类库 \jre目录: Java运行环境,包括Java虚拟机、运行类库等 …

4、Java开发环境 C:\ Jdk bin lib jre demo javac appletviewer java 当前目录 用户类文件所在目录 c:\java\examples\applications javac appletviewer java

5、Java类库 Java程序由各种类(class)组成 几点提示 你自己编写的类 (Java class libraries——Java API) JDK——Java Development Kit(1.1~1.4) 独立软件供应商、免费软件/共享软件 几点提示 使用类库可以 提高软件重用/提高效率/提高移植性 网络上有许多开放的Java源码资源

Java Packages (1) Language java.lang Classes that contain the main core of the Java language. Utilities java.util Support for utility data structures. I/O java.io Support for various types of input/output. Text java.text Localization support for handling text, dates, numbers, and messages. Math java.math Classes for performing arbitrary- precision integer and floating-point arithmetic. AWT java.awt User interface design and event- handling. Swing javax.swing Classes for creating all-Java, lightweight components that behave similarly on all platforms.

Java Packages (2) Javax javax Extensions to the Java language. Applet java.applet Classes for creating applets. Beans java.beans Classes for developing JavaBeans. Reflection java.lang.reflect Classes used to obtain runtime class information. SQL java.sql Support for accessing and processing data in databases. RMI java.rmi Support for distributed programming. Networking java.net Classes that support development of networking applications. Security java.security Support for cryptographic security

6、Java程序 Java程序分两种: 程序员编写main函数的应用(如图形桌面程序 Java Application) 程序员不编写main函数的应用(如Java Applet、分布式程序)

6、Java程序 Java程序结构: package语句:零个或多个,必须放在文件开始 import语句:零个或多个,必须放在所有类定义之前 public ClassDefinition:零个或一个 ClassDefinition:零个或多个 InterfaceDefinition:零个或多个 类个数:至少一个类,最多只能有一个public类 源文件命名:若有public类,源文件必须按该类命名 标识符:区分大小写

6、Java程序 ——Java应用程序(Java Application) 类库支持:引用其他类。 类定义:定义程序所需的类及接口,包括其内部的变量、方法等。 main()方法:应用程序的入口,与标准C中main()函数的地位是一样的。一个应用程序有且只有一个main()方法,main()方法必须包含在一个类中,该类即为应用程序的外部标志。 程序注释:与C++类似,/*…*/ //…

6、Java程序 ——第一个Java应用程序 public class HelloWorld { public static void main(String args[]) System.out.println(“Hello World!”); } 编辑存盘:文件名和公共类名(用public声明) 要一致 HelloWorldApp.java 编译程序:javac HelloWorldApp.java 运行程序:java HelloWorldApp 运行结果:Hello World!

6、Java程序 ——第一个Java应用程序 public class HelloWorld { public static void main(String args[]) System.out.println(“Hello World!”); } 声明一个类:public class HelloWorldApp{},类名第一个字母大写。 一个类中可有很多方法, main方法是运行程序的第一个方法,方法名的第一个字母小写。 System.out.println是向屏幕输出,相当于C中的printf()。

6、Java程序 注意 ——第一个Java应用程序 程序进入从一个类的main方法开始,必须保证主类HelloWorldApp中实现了main方法。

6、Java程序 ——第二个Java应用程序(命令行参数) public class CommArg { public static void main(String args[]) // Display command arguments int i; if( args.length > 0 ) //have some command arguments for( i=0; i<args.length; i++ ) System.out.println("arg["+i+"] = "+args[i]); } else //no command argument System.out.println("No arguments!");

6、Java程序 ——第二个Java应用程序(命令行参数) 命令行参数: main( String args[] ),与标准C中main(int argc, char* argv[]) 相似。 字符串的拼接: "arg[" + i + "] = " + args[i]。 编译程序:javac HelloWorldApp.java 运行程序(命令行参数获取): java CommArg first second third 运行结果: arg[0] = first arg[1] = second arg[2] = third

6、Java程序 ——第三个Java应用程序 一个图形应用程序

6、Java程序 ——Java小程序(Java Applet) 类库支持:继承Applet类,引用其他类。 类定义:定义程序所需的类及接口,包括其内部的变量、方法等。 start()方法:初始化后,重入等都将自动调用。Applet的主体,在其中可以执行一些任务或启动相关的线程来执行任务,如paint()方法等。 paint()方法:显示、重画Applet窗口时调用。 stop()方法:离开Applet所在页面时调用,以停止消耗系统资源。

6、Java程序 ——第一个Java小程序 import java.applet.*; import java.awt.*; public class Hello extends Applet { public String s; //成员变量,存放要显示在屏幕上的字符串 public void paint(Graphics g) //显示方法,每次需要重画时该方法被调用 g.drawString(“hello world!!!”,25,25); //在Applet窗口中指定位置显示字符串 }

6、Java程序 ——第一个Java小程序 编辑存盘:文件名和主类名一致 编译代码:javac HelloApplet.java 编写HTML文件: HelloApplet.html <HTML> <HEAD> <TITLE>Hello World</TITLE> </HEAD> <applet code="HelloApplet.class" codebase= "." width=300 height=60> </applet> </HTML>

6、Java程序 ——第一个Java小程序 Java小应用程序不能直接执行和使用,必须要在浏览器中执行。 运行Applet程序: 1. appletviewer HelloApplet.html 2. 在浏览器中运行 运行结果: Hello World!

6、Java程序 ——第一个Java小程序 理解程序: import语句相当于C语言中的include。 每一个applet都是java.applet.Applet的子类,用extends继承。 applet中没有main()方法。当applet被浏览器运行时, init() 、start()方法等自动执行,再调用paint()方法。 在applet中与屏幕输出有关的操作通过Graphics对象来实现。 一个Java源文件内最多只能有一个public 类,称为主类,且文件名必须和它同名。

Java语言学习 1、阅读类库文档,了解、掌握Java开发类库的使用方法; 2、多分析例子程序,多上机练习。 3、了解OO的思想。

下一讲内容:Java语言基础 1、Java语言规范 Java数据类型 Java运算符和表达式 Java控制语句 Java类定义规范