目录
1.java常用访问控制符
2.构造器(构造方法)
1) 构造器的修饰符可以默认, 也可以是 public protected private
2) 构造器没有返回值
3) 方法名 和类名字必须一样
4) 参数列表 和 成员方法一样的规则
5) 构造器的调用, 由系统完成
3.Lombok插件的使用
Lombok 项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。
例:
sts(eclipse)中导入lombok
创建java项目,引入lombok.jar包
![](https://i-blog.csdnimg.cn/blog_migrate/4f191b286dec64fd290bda079bb47fd9.png)
添加到BuildPath路径上
@Getter/@Setter:会自动生成set/get方法
@NoArgsConstructor:自动生成无参构造器@AllArgsConstructor:自动生成有参构造器
4.static关键字
static 修饰静态部分,由static修饰代码有如下性质:
static在jvm分配的static空间中。static空间分配比较早。static修饰的方法、属性只能被定义一次。static修饰的方法、属性不属于当前对象,一般使用类名方式访问
5.对象的初始化顺序
无继承时:
有继承时:
6.继承的细节问题:
1) 子类继承了所有的属性和方法,非私有的属性和方法可以在子类直接访问, 但是私有属性和方法不能在子类直接访问,要通过父类提供公共的方法去访问
2) 子类必须调用父类的构造器, 完成父类的初始化
3) 当创建子类对象时,不管使用子类的哪个构造器,默认情况下总会去调用父类的无参构造器,如果父类没有提供无 参构造器,则必须在子类的构造器中用 super 去指定使用父类的哪个构造器完成对父类的初始化工作,否则,编译不会通过
4) 如果希望指定去调用父类的某个构造器,则显式的调用一下 : super(参数列表)
5) super 在使用时,必须放在构造器第一行(super 只能在构造器中使用)
6) super() 和 this() 都只能放在构造器第一行,因此这两个方法不能共存在一个构造器
7) java 所有类都是 Object 类的子类, Object 是所有类的基类.
8) 父类构造器的调用不限于直接父类!将一直往上追溯直到 Object 类(顶级父类)
9) 子类最多只能继承一个父类(指直接继承),即 java 中是单继承机制。
10) 不能滥用继承,子类和父类之间必须满足 is-a 的逻辑关系