day13-面向对象(下)-1
1、static 修饰的属性,相较于实例变量,有哪些特别之处(>=3点)
(1)static 修饰的属性,在类初始化的时候就被加载到内存中(方法区的静态域中)
(2)static 修饰的属性,早于对象的创建
(3)static 修饰的属性,被多个实例共享
(4)static 修饰的属性,可以通过 "类.属性" 直接调用
2、final 可以用来修饰哪些结构,分别表示什么意思
final可以用来修饰 类、变量、方法
(1)final修饰类:该类不可以被继承
(2)final修饰变量:该变量不可以被修改
(3)final修饰方法:该方法不可以被重写
3、代码实现单例模式的饿汉式
public class People{
//声明一个静态属性 保存People的实例
private static People people = new People();
//构造器私有化
private People(){
}
//提供一个public的方法获取People的唯一实例
public static People getInstance(){
return people;
}
}
4、代码实现单例模式的懒汉式 。
public class People{
private static People people;
private People(){
}
public static People getInstance(){
if(people == null){
people = new People();
}
return people;
}
}
5、 类的属性赋值的位置有哪些?先后顺序为何?
(1)默认初始化
(2)显式初始化 / 代码块中初始化
(3)构造器中初始化
(4)通过 “对象.属性” 或者 “对象.方法” 进行赋值