一、概述
static是一个关键字,表示静态的意思,可以修饰成员变量,成员方法
二、特点
- 随着类的加载而加载
- 优先于对象存才
- 被static修饰的内容,能被该类下所有的对象共享
- 就是:这也是判断是否使用静态关键字的条件
- 可以通过类名.的形式调用
三、实例
-
定义学生类,属性为姓名,年龄,毕业院校
// 学生类 public class Student { // 属性 String name; int age; String graduateFrom; }
-
在学生类中定义show()方法,用来打印上述的各个属性信息
// 学生类 public class Student { // 属性 String name; int age; static String graduateFrom; // 行为 public void show() { System.out.println("姓名:"+this.name+",年龄:"+this.age+",毕业院校:"+this.graduateFrom); } }
-
在测试类的main方法中,创建学生对象,并调用学生类的各个成员
// 学生类 public class Student { // 属性 String name; int age; static String graduateFrom; // 行为 public void show() { System.out.println("姓名:"+this.name+",年龄:"+this.age+",毕业院校:"+this.graduateFrom); } } public class StudentTest { public static void main(String[] args) { // 1.设置学生的毕业院校 Student.graduateFrom = "黑河学院"; // 2.创建学生对象s1 Student s1 = new Student(); s1.name = "欧洲酋长"; s1.age = 21; // 3.创建学生对象s2 Student s2 = new Student(); s2.name = "EuropeanSheik"; s2.age = 22; // 4.打印属性值 s1.show(); s2.show(); } }
四、静态方法的访问特点以及注意事项
- 访问特点
- 静态方法只能访问静态的成员变量和静态的成员方法
- 简单记忆:静态只能访问静态
- 注意事项
- 在静态方法中,是没有this,super关键字的
- 因为静态的内容是随着类的加载而加载,而this和super是随着对象的创建而创建
- 即:先进内容的,不能访问后进内存的