OOP
Object Oriented Programming
类、域、方法、对象
class
/ type
类 = 域 + 方法
[public] class 类名[<类型参数列表>] [类型参数列表 extends 父类型 & 父类型 & ...] [implents 接口名列表] {
// 类体
}
域 field
域的定义
等同于变量的定义
直接定义在类体中
访问限定修饰符 类型名 域名;
方法 method
访问限定修饰符 返回类型 方法名(参数列表) [throws 受检异常类列表] {
// 方法体
}
参数列表
用
,
间隔开多个参数
void
方法没有返回值return
返回控制构造方法 constructor
类的默认构造方法
没有方法体
初始化类的域为默认值
- 布尔类型默认值
false
- 基本数值类型
0
或0.0
- 引用数据类型
null
this
指代当前类instance
new
创建或生成一个类的对象,总是调用类的构造方法继承 inherit
extends
继承/扩展子类 extends(继承)
父类
子类拥有父类的域和方法
注意父类成员的访问限定修饰符
- 父类的
default
成员,只有同包子类可继承- 父类的
private
成员,不能继承
子类可以有自己的域和方法
super
指代父类instanceof
判断对象是否是类的实例polymorphism
overload
overwrite
/覆盖 override
了父类的方法(有相同的声明)package
package
打包语句,必须是类里的第一行代码import
导包语句common sense
封装 encapsulation
default class
只有同包的其他类可访问public class
外包的类可访问,需导入,常用private
私有的,只有同一个类内部可访问default
默认的,只有同一个包内部可访问protected
受保护的,外包中子类的实例对象可访问public
共有的,外包可访问成员域一般都是私有的
隐藏内部的数据
成员方法一般都是公有的
为外部提供访问的接口
封装的含义
abstract
static
类对象
final
_
分隔interface
[public] 接口名[<类型参数列表 extends 父类型 & 父类型 & ...>] [extends 接口名称列表] {
// 接口体
}
implements
extends
多个父接口内部类
{
到类的终止 }
block
作用域范围local variable
,方法的参数,循环的变量