第一节 Java 语言简介
一、Java 语言的起源
1991:Sun Microsystems 公司推出
1995:Oak 更名为 Java
2009:Oracle 收购 Sun 公司
标准版:J2SE
企业版:J2EE
移动版:J2ME
二、Java 语言的特点
- Java 是简单的、面向对象的语言,并具有分布性、安全性和健壮性。
- 最初是解释执行,现在增加了编译执行
- 多线程、动态的语言
- 与平台无关(解决软件移植问题)
一、语法简单,功能强大,安全可靠
Java 类似于 C++,两种语言有很多语法及概念是相同或相近的。
Java 去掉了 C++ 中不常用且容易出错的地方(指针、结构、类型定义等概念,没有全局变量、预处理器等)
Java 具有自动无用内存回收机制
Java 是强类型语言,严格遵守编程规范,编译程序能够检查出尽可能多的语法错误
Java 强调面向对象特性,是一个纯面向对象的语言
Java 程序通过对象的封装、类的继承、方法的多态等机制,实现了代码复用、信息隐藏、动态绑定等特性、可以开发出非常复杂的系统,但又不失程序的易读性
Java 程序在语言定义阶段、字节码检查阶段及程序执行阶段实行三级代码安全检查机制,对参数类型匹配、对象访问权限、内存回收等都进行了严格的检查和控制,可以有效地防止非法代码的侵入,阻止对内存的越权访问,能够避免病毒的侵害
二、与平台无关
JVM 是一台虚拟计算机,通过在实际计算机上仿真模拟各种计算机功能来实现的,不同操作系统有不同的虚拟机(类似于一个小巧而高效的 CPU )
Java 编译器将 Java 程序编译成虚拟机能够识别的二进制代码(字节码),字节码就是虚拟机的机器指令(与平台无关,有统一的格式,不依赖具体的硬件环境,只运行在 JVM 上)
在任何安装 Java 运行环境的系统上都可执行
JVM 在执行字节码文件时,把字节码解释成具体平台上的机器指令执行
(一般高级程序语言在不同平台,需针对本计算机机器指令而编译成不同的目标文件)
Java 语言规定了统一的数据类型,有严格的语法定义,在任何平台上,同一种数据类型是一致的,为 Java 程序跨平台的无缝移植提供了很大的便利
三、解释编译两种运行方式
Java 程序可以经解释器得到字节码(精心设计,并得到优化)
在现在的 Java 版本又加入了即时编译功能( Just-in-time 编译器,简称:JIT 编译器),编译器将字节码转换成本机的机器代码,能够以较高速度执行
四、多线程
Java 内置了语言级多线程功能,提供现成的类 Thread,继承这个类就可编写多线程的程序
Java 提供的同步机制可保证各线程对共享数据的正确操作,完成各自的特定任务。在硬件条件允许的前提下,这些线程可以直接分布在各个 CPU 上,充分发挥硬件性能,减少用户等待时间
五、动态执行兼有丰富的 API 文档及类库
Java 执行代码是在运行时动态载入的,程序可以自定进行版本升级
在网络环境下,可用于瘦客户机架构,减少维护功能
Java 为用户提供了详尽的 API 文档说明
第二节 Java 开发环境的安装与设置
- Javac:编译器
- Java:解释器
- Jdb:调试器
- Javap:反编译
- Javadoc:文档生成器
第三节 Java程序示例
*略
第四节 使用 Java 核心 API 文档
*略
第五节 Java 中的面向对象技术
一、面向对象技术
所谓面向对象的方法学,就是使分析、设计和实现一个系统的方法尽可能地接近人们人事一个系统的方法
- 面向对象分析(OOA)
- 面向对象的设计(OOD)
面向对象的程序设计(OOP)
面向对象技术包含的概念主要有抽象、对象、类、类型层次(子类)、封装、继承性、多态性等
Java 语言是一种“纯”面向对象语言,它的所有数据类型,包括最基本的布尔型、数值型、及字符型,都有相应的类,程序可以完全基于对象来编写
二、OOP
类的概念:来自于同一种原型,具有一样的共性。或者来自于同一个模板
这其中的某个特定实体即为实例或称对象
对象是类的一个具象,类是对象的一个抽象
集合:相互作用的事物的集合
对象特性:
- 状态:对象本身的信息
行为:对对象的操作
对象 = 数据 + 方法
可以将生活中的对经过抽象、映射为程序中的对象
OOP 三大技术:
- 封装:将对象的属性及实现细节隐藏起来,只给出如何使用的信息
- 继承:将一个已有的类中的数据和方法保留,并加上自己特殊的数据和方法
- 多态:使用相同的操作名,能根据具体的对象自动选择对应的操作
