• java —— static 关键字


    static 用法

    声明静态成员变量(也称类变量),从属于类,是该类的公用变量,生命周期与类相同,**注意与普通成员变量区分 ** 普通成员变量从属于对象,生命周期与对象相同。

    注意!!!

    static 方法不可访问非static 成员,非static成员从属于对象,在堆内存中无法找到。

    个人理解:static 变量声明初始化以后,创建的对象全都是被初始化过的,相当于这个类特有的“印记”

    撸代码:

    /**
     * @author DREAM_yao
     *static关键字的用法
     */

    /*static:声明静态成员变量和方法,从属于类
     * 
     * */


    class Score{
        String name;/*从属于对象*/
        static String id="DREAM_yao";/*从属于类*/
        static int num;
        public void printname() {/*普通方法可以调用静态方法*/
            System.out.println("普通方法:"+id);
        }
        public static void printId(){/*静态方法不能调用普通方法,在内存中找不到*/
            System.out.println("静态方法:"+id);
        }
    }
    public class TestConstructor {
        public static void main(String[] args) {
            Score s2 = new Score();
            s2.printname();
            s2.printId();
            s2.id="快乐撸代码";
            System.out.println(s2.num);
            s2.printId();
        }
    }

    静态初始化块:

    用于类的初始化

    /**
     * @author DREAM_yao
     *静态初始化块
     */

    /*static:声明静态成员变量和方法,从属于类
     * 
     * */

    class Score{
        String name;/*从属于对象*/
        static String id;/*从属于类*/
        static int num;
        static {/*static 初始化块*/
            System.out.println("执行类的初始化:");
            id="DREAM_yao";
            num=666;
            System.out.println(num+" "+id);
        }
    }
    public class TestConstructor {
        public static void main(String[] args) {
            Score s2 = new Score();
        }
    }
  • 相关阅读:
    WeihanLi.Npoi 1.10.0 更新日志
    消除代码中的坏味道,编写高质量代码
    代码重构之法——方法重构分析
    使用 C# 捕获进程输出
    .net core 中的经典设计模式的应用
    JDBC 规范中文版 4.2 -第一章 简介
    基础回顾-线程的几种状态
    一文读懂BeanFactory和FactoryBean区别
    阿里云云计算ACA 第三章 阿里云存储服务
    阿里云云计算ACA 第二章 阿里云弹性计算
  • 原文地址:https://www.cnblogs.com/HappyKnockOnCode/p/12660091.html
Copyright © 2020-2023  润新知