《java视频-CJavaMasterVisualsVol1V1》由会员分享,可在线阅读,更多相关《java视频-CJavaMasterVisualsVol1V1(54页珍藏版)》请在金锄头文库上搜索。
1、授课:何其锟 qikun_,Core Java,课程代码:CY420 1.0 版,授课:何其锟 qikun_,第 1 单元,Java 概述,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,学习目标,了解 Java 的历史 Java 概览 学习 Java 面向对象编程技术的基本原理 讨论 Java 的特色 讨论 Java 与 C/C+ 的不同 了解 Java 平台 讨论 Java 平台的独立性 了解 Java 对万维网的影响 理解 Java 程序的基本结构,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 的历史,在 1990 年 12 月,Sun Mic
2、rosystems 的 Patrick Naughton、James Gosling 和 Mike Sheridan 组成一个小组从事称为“绿色项目”的项目 该小组于 1991 年 4 月决定使用嵌入式系统软件生成智能消费类设备,这种消费类设备可用作该项目的传递平台 James Gosling 是“Oak”编译器的开发者,后来其他小组成员继该编译器之后开发了解释程序,这个解释程序后来成为 Java 语言 它在 1995 年更名为 Java (今天SUN公司已经被甲骨文(Oracle)公司收购),北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,什么是 Java?,按 Sun 关于
3、 Java 的白皮书的话说,“Java 是一种简单的、面向对象的、分布式的、解释的、健壮的、安全的、结构中立的、可移植的、高性能的、多线程的及动态的语言” Java 不仅是一种编程语言,而且也是一种平台,在该平台上可以开发应用程序并在因特网上或在企业内部网环境中运行 Java 的大多数基本特征都从 C 和 C+ 派生而来 Java 编程语言用于开发两类程序应用程序Applet,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,什么是 Java? 续,应用程序是单独运行的程序,可以在计算机、该计算机的操作系统中运行 Applet 是小型 Java 程序,它可以使用 Applet 标
4、志嵌入 HTML 页面中 Applet 设计成在因特网上传输并由 Java 兼容的 Web 浏览器执行 Applet 是一种智能程序,它响应用户输入并动态更改 Java 开发工具箱(JDK)是开发者编译、调试和运行 Java 程序以及 Applet 所需的工具,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 面向对象编程技术的基本原理,Java 语言通过定义面向对象的关键特征:封装(encapsulation)、继承(inheritance)和多态性(polymorphism)来实现面向对象模型 封装继承 多态性 封装是面向对象设计的关键 它使我们能够将对象中的代码和
5、数据进行分组,其中对象作为封装器 它保护代码和数据不被其它代码恶意访问 对象提供一个接口,外部代码可以使用该接口访问封装的代码,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 面向对象编程技术的基本原理 续,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 面向对象编程技术的基本原理 续,当希望已创建的新类使用现有类中已有的功能时使用继承机制 现有类称为超类,而我们创建的新类称为子类,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 面向对象编程技术的基本原理 续,多态性使接口可用于一般的类操作 实际情况决定特定的操作,
6、交通工具,2 轮车,4 轮车,自行车,踏板车,机器脚踏车,小汽车,公共汽车,卡车,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,类和对象,类用作定义对象的模板 用于操作这些变量的变量名、变量类型和方法在类中进行定义 我们可以比较对象与变量以及变量类型与类 可以创建一个类的多个对象,就像可以在程序中声明相同类型的多个变量一样,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 特色,简单 安全 可移植 面向对象 健壮 多线程 结构中立 解释性 高性能 分布式 动态,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 与 C/C+,Ja
7、va 被视为比 C+ 更纯的面向对象语言,因为 Java 程序必须使用对象 在 C+ 中,面向对象是可选的 没有全局变量或函数 Java 被设计成源代码和编译后的二进制形式的代码都是跨平台的 这是可能的,因为 Java 将其源代码编译成中间和平台独立的字节码 在程序执行时,这种字节码是使用特定于平台的解释程序,即 Java 虚拟机(JVM)进行解释的 考虑其内存管理技术,Java 是健壮的 Java 自动管理内存分配和取消分配,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 与 C/C+ 续,Java 支持多线程编程技术,它允许您编写同时执行许多事情的程序 Java
8、不支持运算符重载和自动类型转换 Java 不支持多重继承,至少不像 C+ 中的那样直接支持 Java 应用程序可以跨网络经由 URL 打开并访问对象,程序员在访问本地文件系统时也利用这种便利 Java 允许执行下标检查 在 Java 中,不可能通过强制类型转换将任意整数转换成指针,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 平台,Java 平台与其它平台有很大不同 它只是一个软件平台,并在其它基于硬件的平台上运行 它与其它平台不同,其它平台基本上都是硬件和操作系统的组合,这与该平台不同 Java 平台主要有两个组件Java 虚拟机或 JVMJava 应用程序编程接
9、口或 API,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 虚拟机,JVM 被称为“虚拟”的。这是因为它是用说明定义的抽象计算机 我们需要集中实现运行 Java 程序的计算机的此抽象说明 要运行 Java 程序,需要集中实现抽象说明 抽象说明本质上是一个概念 集中实现存在于许多平台上,且来自许多供应商 一个 Java 应用程序在一个运行时实例中运行 每个 Java 应用程序都在 Java 虚拟机抽象说明的某些具体实现的运行时实例内部运行,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 虚拟机的生命期,Java 虚拟机运行时实例的目的是运行一
10、个 Java 应用程序 运行时实例随 Java 应用程序的启动而诞生,随 Java 应用程序的结束而死亡 JVM 通过调用某些初始类的 main() 方法开始执行其唯一的应用程序 main() 方法必须是公有静态方法 它必须返回 void,并接受一个 String 数组形式的参数 必须向 Java 虚拟机提供具有 main() 方法的初始类的名称,该方法将以机器无关的方式启动整个应用程序,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 虚拟机的生命 续,该应用程序以其初始类的 main() 方法启动,该方法接着调用其它线程 Java 虚拟机中有两类线程 守护程序 非守
11、护程序 守护程序线程是由虚拟机自已使用的线程,例如,执行垃圾回收的线程 Java 应用程序可以将其自己创建的任何线程呈现为守护程序线程 另一方面,非守护线程是应用程序的初始线程,它从 main() 启动,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java API,API 代表应用程序编程接口 Java 提供以下 API基本语言相关的类抽象的窗口工具箱类文本相关的类Applet 相关的类用于联网的类用于输入输出的类基本的实用程序 数据库连接类用于远程方法调用的类安全性相关的类,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 的平台独立性,Java
12、使创建不用更改就可以运行在多种平台上的二进制可执行文件成为可能 Java 源代码经历两个步骤的过程 Java 源程序存储在扩展名为 .java 的文件中,就像我们将所有 C 源代码存储在扩展名为 .c 的文件中一样 然后,.java 文件作为命令行参数传递给 javac(Java 编译器),它将 ASCII 文本转换成字节码 编译器创建扩展名为 .class 的文件 .class 文件被传递给 Java 解释程序,它解释该字节码 这些字节码可以在 Java 虚拟机(字节码解释程序)上执行 字节码是与机器无关的,因此可以在任何机器上运行,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何
13、其锟,一个简单的 Java 程序,public class SimpleProgram public static void main (String args) System.out.println(“A Java Program”); Java 确实是面向对象的编程语言,因为使用 Java 开发的所有应用程序都将具有类 上面的程序打印一个字符串“A Simple Java Program”。所有这些代码都封装在类中 Java 应用程序必须具有类似于 C+ 应用程序 main 函数的 main 方法,该 main 方法是要执行的第一个例程,北京领航致远科技有限公司 西安直属中心 版权所有 授
14、课:何其锟,Java 中的常量,Java 中的常量整型浮点型 字符型布尔型字符型,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,小结,学习了 Java 的历史 学习了面向对象编程语言的基本原理 学习了 Java 程序的基本结构 学习了编写简单的 Java 程序 讨论了 Java 的特色 比较了 Java 和 C/C+ 了解了 Java 平台 讨论了 Java 的平台独立性 讨论了 Java 对万维网的影响 讨论了 Java 程序的基本结构,授课:何其锟 qikun_,第 2 单元,运算符、表达式和控制流,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,学习目标
15、,学习 Java 的基本元素:数据类型和变量 了解 Java 中不同类型的运算符 了解运算符的优先级 理解类型转换 讨论 Java 中的控制结构,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,简单数据类型和声明,整型 Java 支持整型变量类型的范围这些变量类型的区别在于它们需要的位数和表示的整数大小不同 浮点型Java 支持两种类型的浮点数,即浮点型和双精度型 双精度型变量使用浮点型变量所使用位数的两倍来存储给定的值它可以比浮点型变量容纳更精确且范围更广的数字 字符型 在 Java 中,字符占用 16 位并以 Unicode 进行编码而实现 布尔型 Java 提供可用于容纳
16、逻辑运算结果的变量类型,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,标识符,Java 允许我们为将在程序中使用的各种元素指定名称(标识符) 在 Java 中使用的这些标识符遵守标准规则 它们以字母开始,并且只能包含字母、数字、下划线(_)字符以及美元($)字符Java 标识符没有长度限制,且标识符名称中不得出现空格Java 标识符是区分大小写的,并支持大写和小写字符Java 使用某些单词作为编程关键字,这些单词不能用作标识符(例如,while、for、class 等等),北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,命名约定,出于可读性考虑,大多数 Java 程序员都使用简单的命名约定来命名程序中使用的不同变量 通常,变量名称或方法名中的第一个字母通常是小写字母,而类名中的第一个字母通常是大写字母 通常,标识是由单词组合构成的(例如,perimeterOfRectangle) 在这种情况下,如果标识符用作变量或方法的名称,则第一个单词以小写字母开始,后续单词以大写字母开始 如果标识符用作类名,则标识符部分的所有单词都以大写字母开始,