静态存储区
pubilc Stringuntry =country ="中国"
存在了静态存储区
生命周期:跟随类的加载而加载而创建
静态方法可以直接用类调用
静态方法不能以方法非静态的变量因为生命周期不同。
public static void test1(){
System.out.println(country);
}
}
普通代码块比构造函数先调用 并且每创建一个对象实例,就会调用一次
system.out.println("代码块")
静态代码块
在实际开放中 根据与静态代码快的特点 常用于资源加载 比如:数据库驱动加载就会写在静态代码块里面
静态代码块比普通代码块先调用 并且只调用一次
静态代码块中也只能访问静态变量
单例设计模式
构造函数
与类同名
没有返回值
成员变量只有了set和get方法才能变成了可访问的属性
java开发中反斜杠小心可能会影响跨平台:
设计模式为了解决一个常见的问题 而形成的步骤方法结构等、
套路
为了使其不能随意创建对象实例 只能 将构造函数私有化
由于构造函数已经私有了 只能在其内部创建实例。
(饿汉式和懒汉式)
由于外部无法直接创建实例对象只能使用静态方法。
懒汉式
class dog
private static dog dog =null;
{private dog(){
第一次使用创建
public static Dog get dog(){
if(dog==null){
dog = new dog();
}
return dog;
}
}
对象数组
反斜杠
面向对象
封装:
继承:
java只支持单继承 但是支持多层继承。
子类在实例化过程中会调用所有父类的构造方法(所有父类都可以调用)
this();
super()访问父类的对应参数的构造方法
只能写在第一行
多态: