static关键字

点 赞
0
热 度
58
评 论
0

1、static关键字

  • static 是静态的意思,可以修饰成员变量和成员方法

1. static 修饰成员变量表示该成员变量只在内存中只存储一份,可以被共享访问、修改。

访问格式:

  • 类名. 静态成员方法(推荐)

  • 对象. 静态成员方法(不被推荐)

static访问注意事项

  • 静态方法只能访问静态的成员,不可以直接访问实例成员。

  • 实例方法可以访问静态的成员,也可以访问实例成员。

  • 静态方法中是不可以出现 this 关键字。

比如如下代码:

  • System.out.println(name); 这行会报错

  • System.out.println(onlinNumber); 这行可以正常执行。

public class Test {
    /**
     * 静态成员变量
     */
    public static int onlinNumber=10;

    /**
     * 实例成员变量
     */
    private String name;
    /**
     * 实例成员方法
     */
    public void run(){
        System.out.println(name+"run...");
    }
    /**
     * 静态测试方法
     * 1. 静态方法只能访问静态成员变量和静态成员方法,静态方法不能访问实例成员变量和实例成员方法
     */
    public static void test(){
        System.out.println(onlinNumber);
        System.out.println(name);
    }
}

1.1、static修饰成员变量示例

static 静态调用示例

public static void main(String[] args) {
        // 通过对象访问静态成员变量(不推荐)
        User u1 = new User();
        System.out.println(u1.onlieNumber);
        // 通过类名访问静态成员变量(推荐)
        System.out.println(User.onlieNumber);
    }

User 实体类

public class User {

    public static  int onlieNumber=161;
    public String name;
    public int age;

    public static void main(String[] args) {
        // 创建用户对象并初始化基本信息
        User u1 = new User();
        u1.name="张三";
        u1.age=18;

        // 输出用户的基本信息
        System.out.println(u1.name);
        System.out.println(u1.age);
        System.out.println(u1.onlieNumber);

        // 增加在线人数统计
        u1.onlieNumber++;
        System.out.println(onlieNumber);

    }
}

输出结果:

1.2、static修饰成员方法示例

public class Student {
    private String name;

      /**
     * 获取两个整数中的最大值
     * @param a 第一个整数
     * @param b 第二个整数
     * @return 返回a和b中较大的那个整数
     */
    public static int getMax(int a, int b) {
        return a > b ? a : b;
    }

    /**
     * 实例方法:属于对象、只能用对象触发访问
     */
    public void study() {
        System.out.println(name + "正在学习");
    }
    public static void main(String[] args) {
        //注意:同一个类中,访问静态方法,类名可以省略不写
        System.out.println(getMax(10, 20));
        //1、类名.静态成员方法
        System.out.println(Student.getMax(10, 20));

        //2、对象.静态成员方法
        Student s = new Student();
        s.name = "李四";
        s.study();
    }
}


余乃云水散人,栖于数字之墟。性耽幽静,常以青简为田,墨痕为穗。晨起推窗,听松风煮茶;夜阑掩卷,伴竹影扫阶。此间筑小筑三椽,藏闲话若干:或遇史海遗珠,则录以素札;偶得诗瓢碎玉,便缀作清吟。往来皆烟霞客,谈笑有鸿儒踪。诸君若得暇,不妨暂驻云履,共品一盏烟岚,半卷春秋。

不具版权性
不具时效性

文章内容不具时效性。若文章内容有错误之处,请您批评指正。

目录

欢迎来到南鸢宸羲的站点,为您导航全站动态

174 文章数
38 分类数
4 评论数
47标签数
最近评论
七斗牛

七斗牛


6666