Java基础复习之static
static表示静态,是Java中的一个修饰符,可以修饰成员方法,成员变量
被静态修饰的成员变量,叫做静态变量(例如:public static String teacherName)
特点:
- 被该类的所有对象共享
- 不属于对象,属于类。
- 随着类的加载而加载,优先于对象存在
调用方式(只需要用类或者某一个拥有该静态变量的对象调用那么所有的对象都会有该属性)
- 类名调用(推荐)
- 对象名调用
例如:
public static void main(stringl args){
Student.teacherName=“阿玮老师";
//1.创建第一个学生对象
Student s1= new student();
s1.setName("张三");
s1.setAge(23);
s1.setGender("男");
//s1.teacherName ="阿玮老师"
s1.study();
s1.show();
//2.创建第二个学生对象
Student s2= new student();
s2.setName("李叫");
s2.setAge(24);
s2.setGender("女");
//s2.teacherName =“阿玮老师"
s2.study();
s2.show();
}
static内存图
被static修饰的成员方法,叫做静态方法
特点:
- 多用在测试类和工具类中
- Javabean类中很少会用
调用方式:
- 类名调用(推荐)
- 对象名调用
static注意事项
- 静态方法只能访问静态变量和静态方法
- 非静态方法可以访问静态变量或者静态方法,也可以访问非静态的成员变量和非静态的成员方法
- 静态方法中是没有this关键字
总结:
- 静态方法中,只能访问静态。
- 非静态方法可以访问所有。
- 静态方法中没有this关键字