static关键字

@

static关键字

1、static修饰成员变量

1.1 静态成员变量

1、有static修饰,属于类,与类一起加载,内存中只有一份,可以被共享访问
2、什么时候用呢?如果信息要被共享,只需要一份就用,比如:系统在线人数。
3、建议用类名访问:类名.静态成员变量 Student.name="张三";
4、注意:同一个类中,访问静态成员可以省略类名不写

Student 对象

package com.haima.d1_static;

public class Student {
    static String name;  //类变量
}

Test 类中访问

Student.name="张三";

//第二种
 Student s1=new Student();
 s1.name="李四
1.2 实例成员变量

1、无static修饰,属于对象,每个对象中都存在一份实例成员变量。比如:name age
2、什么时候用呢?比如:name age,每个对象中都有这些信息,而且信息还不同时,定义成实例成员变量。
3、只能用:对象名.实例成员变量。

Student 对象

package com.haima.d1_static;

public class Student {
    int age;  //实例变量(对象)
}

Test 类中访问

 Student s1=new Student();
 s1.age=10;

2、static修饰成员方法

2.1 静态成员方法

1、有static修饰,属于类,与类一起加载,可以被共享访问
2、建议用类名访问:类名.静态方法
3、注意:同一个类中,访问静态成员可以省略类名不写。

Student 对象

package com.haima.d1_static;

public class Student {
     //类方法
    public static void printHello(){
        System.out.println("你好1");
        Student.schoolName="哈哈";
        

    }
}

Test 类中访问

 //访问类方法
 Student.printHello();
2.2 实例成员方法

1、无static修饰,属于对象,必须用对象触发访问
2、什么时候用呢?如果这个方法属于对象,而且要直接访问对象的实例成员,则申明成实例方法。
3、注意:只能用:对象名.实例成员方法

Student 对象

package com.haima.d1_static;

public class Student {
     //实例方法
    public void print(){
        System.out.println(this);
        System.out.println("你好2");
        
    }

}

Test 类中访问

//访问实例方法
Student s1=new Student();  //new一个对象
s1.print();

static 注意事项

1、类方法中可以直接访问类的成员,不可以直接访问成员变量
2、实例方法中既可以访问类成员,也可以访问实例成员
3、实例方法中可以出现this关键字,但是类方法中不可以

🎉写在最后

🍻伙伴们,如果你已经看到了这里,觉得这篇文章有帮助到你的话不妨点赞👍或 Star ✨支持一下哦!手动码字,如有错误,欢迎在评论区指正💬~

你的支持就是我更新的最大动力💪~

https://blog.csdn.net/qq_48164590?type=blog

posted on 2024-03-09 10:58  code袁  阅读(18)  评论(0)    收藏  举报