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)通过 “对象.属性” 或者 “对象.方法” 进行赋值

posted @ 2023-01-04 09:28  huxingxin  阅读(14)  评论(0编辑  收藏  举报