目录
Java软件开发的三个阶段
- 面向对象分析(OOA)
- 面向对象设计(OOD)
- 面向对象编程(OOP)
Java分类
- Java SE(Java Standard Edition):标准版,定位在个人计算机上的开发
- Java EE(Java Enterprise Edition):企业版,定位在服务器端的开发
- Java ME(Java Micro Edition):微型版,定位在消费性电子产品的应用上
Java特征和优势
- 跨平台/可移植性:核心优势
- 安全性
- 面向对象
- 简单性
- 高性能
- 分布式
- 多线程
- 健壮性
JVM
Java虚拟机解释执行字节码文件(.class),java的核心优势即跨平台,需要用到Java虚拟机,即相同的字节码程序需要在不同的平台上运行,这几乎是“不可能“的,只有通过中间的转换器才可以实现,JVM就是这个转换器。不同平台上的JVM不同,但都提供相同的接口。
易错点
- Java对大小写敏感,如果出现大小写拼音错误,程序无法运行。
- 关键字public被称作访问修饰符,用于控制程序的其他部分对这段代码的访问级别。
- 关键字class的意思是类。Java是面向对象的语言,所有代码必须位于类里面。
- 一个源文件中至多只能声明一个public类,其他词的个数不限,如果源文件中包含一个public类,源文件名必须和其中定义的public的类名相同,且以”.java“为扩展名。
- 一个源文件可以包含多各类class。
- 正确编译后的源文件,会得到相应的字节码文件,编译器为每个类生成独立的字节码文件,且将字节码文件自动命名为类的名字且以”.class“为拓展名。
- main方法是Java应用程序的入口,它有固定的书写格式:
- public static void main(String[] args) {...}
- 在Java中,用花括号划分程序的各个部分,任何方法的代码都必须以”{“开始,以”}“结束,由于编译器忽略空格,所以花括号空格分格不受限制。
- Java中每个语句后必须以分号结束,回车不是语句的结束标志,所以一个语句可以跨多行。
面向对象和面向过程(结构化程序设计)的区别
面向对象 | 面向过程 | |
最小程序单位 | 类 | 函数 |
中心 | 对象 | 函数 |
注:目前只知道这么
面向对象的语言不仅使用类来封装一类事物的内部状态数据,而且类会提供操作这些状态数据的方法 ,还会为这类事物的行为特征提供相应的实现,这种实现也是方法。
基本等式
成员变量(状态数据)+方法(行为)=类定义
面向对象的三个基本特征
- 封装(Encapsulation)
- 继承(Inheritance):子类继承父类后,子类作为一种特殊的父类,将直接获得父类的属性和方法,继承分为单继承和多继承,Java不支持多继承
- 多态(Polymorphism):子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,可以表现出多种行为特征。
注:”基于对象“没有继承和多态的特征
对象与类的关系
类是对象的抽象,对象是类的实例
对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
类:类是一个模板,它描述一类对象的行为和状态。
Java语言使用class关键字定义类,可以使用new关键字来创建指定类的对象了,每个类可以创建任意多个对象,多个对象的成员变量值可以不同——这表现为不同对象的数据存在差异。
类之间的结构关系
- 一般->特殊关系:典型的继承关系,用关键字extends来表示这种继承关系
- 整体->部分结构关系:被称为组装结构,典型的组合关系
组合关系
当某个实体组成另一个实体时,该实体则不能同时是一个实体的部分。
标识符
标识符是用来给变量、类、方法以及包命名的,标识符需要遵守一定的规则:
- 标识符必须以字母(英文字母、汉字)、下划线、美元符号$开头
- 标识符其他部分可以是字母、下划线“_”、美元符“$”和数字的任意组合
- Java标识符的大小写敏感,且长度无限制
- 标识符不可以是Java的关键字
使用规范
- 表示类名的标识符:每个单词的首字母大写
- 表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写,“驼峰原则”
由于Java采用的是Unicode字符集,汉字和英文字母一样,都是普通字符