Java入门教程(25)——static关键字

简介: static关键字的介绍及使用

静态变量(类变量)、静态方法(类方法):static 声明的属性或方法

注意:

为该类的公用变量,属于类,被该类的所有实例共享,在类载入时被初始化。
static 变量只有一份。
一般用类名.类变量/方法来调用。
在 static 方法中不可直接访问非 static 的成员

实例:

public class TestStatic {
    int id; // id
    String name; // 账户名
    String pwd; // 密码
    static String school = "清华大学"; // 学校名称

    public TestStatic(int id, String name) {
        this.id = id;
        this.name = name;
    }

    public void login() {
        System.out.println(name);
    }

    public static void printSchool() {
// login();//调用非静态成员,编译就会报错
        System.out.println(school);
    }

    public static void main(String[] args) {
        TestStatic u = new TestStatic(01, "张三");
        TestStatic.printSchool();
        TestStatic.school = "北京大学";
        TestStatic.printSchool();
    }
}

运行结果如下:

在这里插入图片描述
内存分析图如下:

在这里插入图片描述

相关文章
|
2天前
|
Java
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
这篇文章详细解释了Java中static和final关键字的用法,包括它们修饰类、方法、变量和代码块时的行为,并通过代码示例展示了它们的具体应用。
15 0
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
|
14天前
|
存储 Java
Java之静态(static)与实例(instance)
Java之静态(static)与实例(instance)
|
2月前
|
Java
【Java基础面试四十一】、说一说你对static关键字的理解
这篇文章主要介绍了Java中static关键字的概念和使用规则,强调了类成员与实例成员的区别及其作用域的限制。
|
2月前
|
存储 Java 对象存储
【Java基础面试四十三】、 static和final有什么区别?
由于网络原因,我无法获取到您提供的链接内容。如果需要我解析该网页,请确保链接有效并重试,或者提供其他问题,我会尽力帮助您。
|
2月前
|
Java
【Java基础面试四十二】、 static修饰的类能不能被继承?
这篇文章讨论了Java中static关键字修饰的类是否可以被继承,解释了静态内部类的概念、规则以及如何实例化。
|
2月前
|
Java
【Java】static 类方法中注意事项
【Java】static 类方法中注意事项
|
2月前
|
Java
【Java】static 修饰成员方法
【Java】static 修饰成员方法
|
2月前
|
Java
【Java】static 修饰变量
【Java】static 修饰变量
|
3月前
|
存储 安全 Java
(二) 彻底理解Java并发编程之 Synchronized关键字实现原理剖析
Synchronized 关键字(互斥锁)原理,一线大厂不变的面试题,同时也是理解 Java 并发编程必不可少的一环!其中覆盖的知识面很多,需要理解的点也很多,本文会以相关书籍和结合自己的个人理解,从基础的应用范围到底层深入剖析的方式进行阐述,如果错误或疑问欢迎各位看官评论区留言纠正,谢谢!
|
3月前
|
存储 缓存 Java
(一) 玩命死磕Java内存模型(JMM)与 Volatile关键字底层原理
文章的阐述思路为:先阐述`JVM`内存模型、硬件与`OS`(操作系统)内存区域架构、`Java`多线程原理以及`Java`内存模型`JMM`之间的关联关系后,再对`Java`内存模型进行进一步剖析,毕竟许多小伙伴很容易将`Java`内存模型(`JMM`)和`JVM`内存模型的概念相互混淆,本文的目的就是帮助各位彻底理解`JMM`内存模型。