# 类和对象
- 成员变量 有默认值0
- 成员方法
- 类名:大驼峰
- rename refactor 改类名
- new 实例化对象
- this 当前对象的引用
- this共有2种使用方式:
- this.data 访问当前对象的实例成员变量
- this.func() 访问当前对象的实例成员方法
- this(参数列表) 访问当前对象的构造方法
- 此处在当前类当中,调用构造方法A(int a),使用this(x);的方式
- #### 初始化
1. 默认初始化
2. 就地初始化
- #### 初始化
- 1. 默认初始化
2. 就地初始化
#### 构造方法
- 没有返回值,方法名和类名相同 例如public Date(){...}
- 自动构造
- 基本上是public修饰
- 只会被调用一次 初始化
- 在一个构造方法内,调用另一个构造方法this()
- 封装:提高安全性
- private
- default (默认,什么都先不写)
- protected
- public
- public:可以理解为一个人的外貌特征,谁都可以看得到
default: 对于自己家族中(同一个包中)不是什么秘密,对于其他人来说就是隐私了
private:只有自己知道,其他人都不知道
- 包:域名逆置 package可查看 src底下为默认包 **为了更好的管理类,把多个类收集在一起成为一组,称为软件包**。
- **包是对类、接口等的封装机制的体现,是一种对类或者接口等的很好的组织方式**,**在同一个工程中允许存在相同名称的类,只要处在不同的包中即可**
- import java.util.Date; import语句导入包
- import java.util.*
- *是通配符,**更建议显式的指定要导入的类名,否则还是容易出现冲突**
- 使用**import static**导入包中静态的方法和字段 static修饰的在方法区,不属于对象,通过对象的引用来访问会警告,应该通过类名来访问,属于类。随着类被加载而创建,类被销毁而销毁。静态的只能是成员变量,不能是局部变量。
- 静态方法不能调用this,不能调用非静态方法比如说main方法。
#### 代码块
- 普通代码块/局部代码块 定义在方法中,不需要条件,直接执行
- 构造代码块/实例代码块 定义在类里面 其次被执行
- 静态代码块 static 最先被执行,类被加载就执行。按定义的顺序。只会执行一次。多个static会合并执行