java视频-CJava Master Visuals Vol 1 V1_第1页
java视频-CJava Master Visuals Vol 1 V1_第2页
java视频-CJava Master Visuals Vol 1 V1_第3页
java视频-CJava Master Visuals Vol 1 V1_第4页
java视频-CJava Master Visuals Vol 1 V1_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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+

7、,Java 被视为比 C+ 更纯的面向对象语言,因为 Java 程序必须使用对象 在 C+ 中,面向对象是可选的 没有全局变量或函数 Java 被设计成源代码和编译后的二进制形式的代码都是跨平台的 这是可能的,因为 Java 将其源代码编译成中间和平台独立的字节码 在程序执行时,这种字节码是使用特定于平台的解释程序,即 Java 虚拟机(JVM)进行解释的 考虑其内存管理技术,Java 是健壮的 Java 自动管理内存分配和取消分配,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 与 C/C+ 续,Java 支持多线程编程技术,它允许您编写同时执行许多事情的程序 Ja

8、va 不支持运算符重载和自动类型转换 Java 不支持多重继承,至少不像 C+ 中的那样直接支持 Java 应用程序可以跨网络经由 URL 打开并访问对象,程序员在访问本地文件系统时也利用这种便利 Java 允许执行下标检查 在 Java 中,不可能通过强制类型转换将任意整数转换成指针,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 平台,Java 平台与其它平台有很大不同 它只是一个软件平台,并在其它基于硬件的平台上运行 它与其它平台不同,其它平台基本上都是硬件和操作系统的组合,这与该平台不同 Java 平台主要有两个组件 Java 虚拟机或 JVM Java 应用

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 相关的类 用于联网的类 用于输入输出的类 基本的实用程序 数据库连接类 用于远程方法调用的类 安全性相关的类,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Jav

12、a 的平台独立性,Java 使创建不用更改就可以运行在多种平台上的二进制可执行文件成为可能 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 进行编

16、码而实现 布尔型 Java 提供可用于容纳逻辑运算结果的变量类型,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,标识符,Java 允许我们为将在程序中使用的各种元素指定名称(标识符) 在 Java 中使用的这些标识符遵守标准规则 它们以字母开始,并且只能包含字母、数字、下划线(_)字符以及美元($)字符 Java 标识符没有长度限制,且标识符名称中不得出现空格 Java 标识符是区分大小写的,并支持大写和小写字符 Java 使用某些单词作为编程关键字,这些单词不能用作标识符(例如,while、for、class 等等),北京领航致远科技有限公司 西安直属中心 版权所有 授课:

17、何其锟,命名约定,出于可读性考虑,大多数 Java 程序员都使用简单的命名约定来命名程序中使用的不同变量 通常,变量名称或方法名中的第一个字母通常是小写字母,而类名中的第一个字母通常是大写字母 通常,标识是由单词组合构成的(例如,perimeterOfRectangle) 在这种情况下,如果标识符用作变量或方法的名称,则第一个单词以小写字母开始,后续单词以大写字母开始 如果标识符用作类名,则标识符部分的所有单词都以大写字母开始,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,声明,在 Java 中,声明变量的方法是先给出类型名称,然后给出该类型的变量名列表 变量名使用逗号分隔

18、所有 Java 语句都使用分号终止 变量可以在 Java 声明语句中进行初始化,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,初始化,正如在 C+ 中发生的那样,Java 也允许在程序代码的任何地方声明变量 但与 C+ 中不同,Java 编译器不允许我们在变量初始化之前使用该变量 如果在 C+ 中发生这种情况,则生成一条警告消息,而在 Java 中则生成一个编译错误 这说明了 Java 对确保可移植性所作的尝试,因为一些平台允许使用未初始化的变量,而一些平台则不允许,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,作用域和程序块,与在 C 和 C+ 中相似,J

19、ava 也使用“”和“”字符标记语句块的开始和结束 这些块对于将一组条件语句、循环语句等等组成块是很有用的 在块中声明的变量只能在该块中或嵌套在该块中的任何块中使用 一旦控制离开声明变量的块,则该变量不再可用,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 中的运算符,运算符用于执行一个、两个或三个操作数的一些特殊运算 只需要一个操作数就能完成运算的运算符称为一元运算符 “-” 是用于使操作数的值减 1 的一元运算符 需要两个操作数才能完成运算的运算符称为二元运算符 “=” 是一个用于将右侧操作数的值赋予左侧操作数的二元运算符 二元运算符使用中缀表示法,其中运算符位于

20、两个操作数之间(例如,a = b + c) 完成运算之后,运算符返回一个值,返回值的类型取决于操作数的类型 例如,当我们加或减两个整型数时,得到的结果也是整型,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Java 中的运算符分类,算术运算符 关系和条件运算符 位运算符 赋值运算符,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,算术运算符,运算符 用法 描述 + op1 + op2 使 op1 和 op2 相加 - op1 - op2 从 op1 减去 op2 * op1 * op2 将 op1 和 op2 相乘 / op1 / op2 用 op2 去除 o

21、p1 % op1 % op2 计算 op2 除 op1 的余数,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,算术运算符 续,“+” 号是 Java 的重载运算符之一 它不仅用于加运算,而且还用于字符串串联,即将字符串连接在一起 String one = This is the first string-; String two = and this is the second string. ; 如果执行以下语句: System.out.println(one + two); 则结果输出将是: This is the first string-and this is the

22、 second string. 也可以将非字符串与字符串组合以输出数值,如下所示: String one = This is a string: ; int num = 1234;,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,关系和条件运算符,运算符 用法 返回真的条件 opa opb opa 大于 opb = opa = opb opa 大于或等于 opb opa opb opa 小于 opb = opa = opb opa 小于或等于 opb = opa = opb opa 等于 opb != opa!= opb opa 不等于 opb,北京领航致远科技有限公司 西安直

23、属中心 版权所有 授课:何其锟,关系和条件运算符 续,运算符 用法 返回真的条件 else statement;,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,If 语句 续,if (test1) statement1 else if (test2) statement2 else if (test3) statement3 else . . else if (testN) statementN,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,For 循环,for(initialization-expression; condition-expression;

24、 iteration-expression) / 循环体 当循环第一次开始时,执行循环的初始化表达式 这是一个设置循环控制变量的值的表达式,循环控制变量是控制循环的计数器 该表达式只执行一次 接着判断条件表达式 它必须是布尔表达式 它通常测试循环控制变量是否是目标值 如果该表达式为真,则执行循环体 如果为假,则终止循环 接下来执行循环的迭代表达式 它通常是使循环控制变量加 1 或减 1 的表达式 然后迭代循环,每次循环都首先判断条件表达式,然后执行循环体,然后再执行条件表达式,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,While 循环,while(condition) / 循环体 while 循环是可在程序中使用的循环类型之一,它一直运行,直到其控制表达式判断为假 这种情况中使用的控制表达式类似于 if 语句中使用的表达式,也返回布尔值,北京领航致远科技有限公司 西安直属中心 版权所有 授课:何其锟,Do-While 循环,do / 循环体 while(condition); Java 也支持类似 C 或

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论