目录
static(关键字)
概念: 静态,可以用于修饰变量和方法。
成员变量有两种:
类变量(也叫静态变量:static修饰)和实例变量(无static修饰)。
类变量(static修饰):
属于类,与类一起加载一次,在内存中只有一份,会被类的全部对象共享。
定义格式:修饰符 static 数据类型 变量名:
使用格式:类名.变量名【推荐】或者对象名.变量名【不推荐】。
特点:共享。
应用场景:在开发中,如果某个数据只需要一份,且希望能够被共享(访问、修改),则该数据可以定义成类变量来记住。
实例变量(无static修饰):
属于每个对象的。
使用格式:对象名.变量名
成员方法有两种:
类方法(也叫静态方法:static修饰)和实例方法(无static修饰)。
类方法:
属于类。
定义格式:public static 返回值类型 方法名(参数 ,参数){ return 值; }。
使用格式:类名.方法名()【推荐】或者对象名.方法名()【不推荐】。
好处:提高代码复用,调用方便,提高了开发效率建议私有。
应用场景:常用于做工具类,全是静态方法,建议私有构造器。
实例方法:
属于对象。
使用格式:对象名.方法名()。
注意事项:
Static修饰的方法,可以调用static修饰的方法、变量。
实例方法,可以调用static修饰的方法、变量也可以调用实例方法、成员变量。
Static不可以使用this,实例方法可以使用this。
代码块:
静态代码块和实例代码块。
静态代码块:
格式:static{}
public class Test {
// 静态代码块格式
static{
System.out.println ("这里写代码块的东西" );
}
}
执行流程:类加载时自动执行,由于类只会加载一次,所以静态代码块也会执行一次。
作用:完成类的初始化。
场景:初始化静态资源。
实例代码块:
格式:{}
public class Test {
// 实例代码块格式
{
System.out.println ("这里写代码块的东西" );
}
}
特点:每次创建对象时,会执行实例代码块,并在构造器前执行
作用:和构造器一样,都是用来完成对象的初始化的。
场景:对成员变量初始化