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