1:static 修饰的属性相较于实例变量, 有哪些特别之处
static: 随着类的加载而加载 static修饰的 只加载一次 早于对象创建 只要权限允许可以通过"对象.static属性"的方式调用 存在于方法区的静态域中 修饰的属性不论有多少个实例只有会产生这一个属性, 其他实例调用的也是同一个属性
2: final可以用来修饰哪些结构: 分别表示什么意思
3: 单例模式的 懒汉 和饿汉模式
4: 类的属性赋值的位置有哪些? 先后顺序为何?
默认初始化
显示初始化,代码块中初始化
构造器中初始化
通过"对象.属性" 或"对象.方法"的方式赋值
static :静态的
static:随着类的加载而加载 在对象实例化之前 1: 可以用来修饰的结构: 主要是用来修饰类的内部结构 属性,方法, 代码块, 构造器, 内部类 2: static 修饰属性: 那么这个属性 在初始的时候可以在显示初始化, 代码块, 构造器中赋值后面就不可以更改 3: static 修饰方法, 此方法不可以被重写 4:static 修饰类 : 该类不可以被继承
如何判断一个属性是否使用static?
设计模式的理解
设计模式 是在大量的实践总结和理论化之后的代码结构,编程风格,以及解决问题的思考方式
常用的设计模式有:-- 23种
等等等
main方法
作为程序的入口
也可以是一个普通的静态方法
也可以作为和控制台的交互
public static void main(String[] args) { } //方法体 权限修饰符: private , 缺省, protected , public ---> 封装性 修饰符: static final abstract native 可以用来修饰方法 返回值类型: 无返回值 void/ 有返回值 带return 方法名 :满足起名规范, 见名知意 形参列表: 重载和重写, 参数的传递机制:方法名一样形参列表不一样重载, 基本数据类型传递的是值,引用数据传递的是内存地址值 方法体: 用来实习具体的功能
代码块
初始化类和对象的信息
代码块使用修饰符也只是修饰static 也就是分为静态和非静态