• Java中static方法和普通方法的举例说明


    以实际的例子去解释使用static 关键字的意义:

    static (静态成员变量):

    用来修饰成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属于某个对象的。 意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。既然属于类,就可以不靠创建对象来调用了。

    类变量:
    当 static 修饰成员变量时,该变量称为类变量。该类的每个对象都共享同一个类变量的值。任何对象都可以更改该类变量的值。

    定义格式:

    static 数据类型 变量名;

    举例:

    static int grade;

    静态方法:
    当 static 修饰成员方法时,该方法称为静态方法 。静态方法在声明中有 static ,可直接使用类名来调用

    定义格式:

    修饰符 static 返回值类型 方法名 (参数列表){
    //执行语句
    }

    举例:在Student类中定义静态方法

    public static void showNum() {
    System.out.println(“num:” + numberOfStudent);
    }

    静态方法调用的注意事项:

    静态方法可以直接访问类变量和静态方法。
    静态方法不能直接访问普通成员变量或成员方法。反之,成员方法可以直接访问类变量或静态方法。
    静态方法中,不能使用this关键字。
    下面开始举例说明:
    如图所示,假如需要定义一个关于课表的学生类,里面有姓名,年龄,学号,上课教室,这里的共有信息:上课教室(用红色标注)。对于姓名,年龄,学号而言,每个对象都要用自己独立的数据。
    但是对于上课教室而言,应该是多个对象共享同一份数据才对。因为同一班级的同学的是一个集体,上课的教室也是一个共有的属性,假如下一节课要换一所教室上课的话,如果不用static修饰成员变量

  • 相关阅读:
    VScode常用快捷键
    用声明式宏解析 Rust 语法之 enum parser
    为什么我的remix没有injected web3
    微信小程序 - 渲染和逻辑
    day 1 704 二分查找、27 移除元素 3de10a93119644fab12fdc47cbff2d1d
    docker部署项目
    [附源码]Python计算机毕业设计Django房产中介管理系统
    代码随想录算法训练营 60天总结
    9、Springboot整合Swagger3
    若依前后端分离,ruoyi-vue jar包更改成war包发布 Websocket 配置
  • 原文地址:https://blog.csdn.net/m0_57290404/article/details/127844821