面向对象程序设计概述
对象来源:自己构造、外界购买
类:构造对象的模板
封装:数据隐藏,处理对象的一个重要概念,给对象带来了“黑盒”的特性
继承:通过扩展一个类来建立另外一个类的过程
对象:行为、状态、标识(三个主要特性会彼此相互影响)
识别类
类之间的关系:依赖、聚合、继承
使用预定义类
对象与对象变量
Java类库中的LocalDate类
更改器方法与访问器方法
用户自定义类
多个源文件的使用
构造器(与类同名,public属性且没有返回值)
使用null引用
隐式参数和显式参数(this指向隐式参数)
封装的优点(注意:不要编写直接返回可变对象引用的访问器方法,得特殊处理返回值——克隆)
基于类的访问权限(一个类的方法可以访问任何同一个类对象的私有字段)
私有方法(public->private,可随意删除,因为不会在其他地方使用)
final实例字段(一般用于基本类型或不可变类字段,对于可变类,使用final修饰符可能会造成混乱)
静态字段与静态方法
静态字段(同一个类的所有实例将共享同一个静态static字段,这个字段属于类,也称类字段)
静态常量
静态方法(类名来调用静态方法,方法可以省略static,但这样就需要通过类对象的引用来调用方法。用对象调用静态方法合法,但是写法容易混淆,因为其操作与对象状态没啥关系,所以建议使用类名而不是对象调用静态方法)
工厂方法(使用静态工厂方法来构造对象,不同方法可以构造不同的对象。而构造器名字无法命名,且无法改变所构造对象的类型)
main方法
方法参数(按值调用)
基本数据类型(作为参数,不会被修改)
对象引用(参数复制的副本,与实例指向同一个对象)
对象构造
重载(要完整的描述一个方法,需要指定方法名以及参数类型,这个叫方法的签名)
默认字段初始化(不明确地对字段进行初始化,会影响程序代码的可读性,默认值往往不是我们所希望的结果)
无参数的构造器
显示字段初始化
参数名
调用另一个构造器
构造器可以调用同一个类中另一个构造器,形如this()
初始化块(不是必须的,且不常见)
首先运行初始化块,然后才运行构造器的主体部分
包
包名
类的导入
在包中增加类
包访问
类路径
设置类路径
JAR文件
文档注释
注释的插入
类注释
方法注释
字段注释
通用注释
包注释
注释抽取
类设计技巧
一定要保证数据私有
一定要对数据初始化
不要在类中使用过多的基本类型
不是所有的字段都需要单独的字段访问器和字段更改器
分解有过多职责的类
类名和方法名要能够体现它们的职责
优先使用不可变的类
总结:介绍的对象和类的这些基础知识,这让我们了解到Java可以作为一种“基于对象”的语言。