千家信息网

Java 中怎么使用static关键字实现静态初始化块

发表于:2024-09-29 作者:千家信息网编辑
千家信息网最后更新 2024年09月29日,本篇文章给大家分享的是有关Java 中怎么使用static关键字实现静态初始化块,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在类中,用
千家信息网最后更新 2024年09月29日Java 中怎么使用static关键字实现静态初始化块

本篇文章给大家分享的是有关Java 中怎么使用static关键字实现静态初始化块,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

在类中,用static声明的成员变量为静态成员变量,也称为类变量。 类变量的生命周期和类相同,在整个应用程序执行期间都有效。它有如下特点:

  1. 为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化。

  2. 对于该类的所有对象来说,static成员变量只有一份。被该类的所有对象共享!!

  3. 一般用"类名.类属性/方法"来调用。(也可以通过对象引用或类名(不需要实例化)访问静态成员。)

  4. 在static方法中不可直接访问非static的成员。

核心要点:

static修饰的成员变量和方法,从属于类。

普通变量和方法从属于对象的。

【示例4-10】static关键字的使用

/** * 测试static关键字的用法 * @author 高淇 * */public class User2 {    int id; // id    String name; // 账户名    String pwd; // 密码         static String company = "北京尚学堂"; // 公司名称              public User2(int id, String name) {        this.id = id;        this.name = name;    }         public void login() {        printCompany();        System.out.println(company);         System.out.println("登录:" + name);    }         public static void printCompany() {//         login();//调用非静态成员,编译就会报错        System.out.println(company);    }         public static void main(String[] args) {        User2 u = new User2(101, "高小七");        User2.printCompany();        User2.company = "北京阿里爷爷";        User2.printCompany();    }}

静态初始化块

构造方法用于对象的初始化!静态初始化块,用于类的初始化操作!在静态初始化块中不能直接访问非static成员。

注意事项:

  静态初始化块执行顺序(学完继承再看这里):

  1. 上溯到Object类,先执行Object的静态初始化块,再向下执行子类的静态初始化块,直到我们的类的静态初始化块为止。

  2. 构造方法执行顺序和上面顺序一样!!

如下 静态初始化块随类的加载而执行

public class User3 {    int id;        //id    String name;   //账户名    String pwd;   //密码    static String company; //公司名称    static {        System.out.println("执行类的初始化工作");        company = "北京尚学堂";        printCompany();    }      public static void printCompany(){        System.out.println(company);    }      public static void main(String[] args) {        User3  u3 = new User3();    }

以上就是Java 中怎么使用static关键字实现静态初始化块,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

静态 变量 成员 方法 对象 关键 关键字 顺序 北京 公司 名称 学堂 实例 密码 更多 知识 篇文章 类名 账户 工作 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 医院软件开发新三板公司摘牌 河北学生网络技术开发哪家好 平谷区网络软件开发价目表 堡垒机和数据库审计的区别 网络安全知识黑板报宣传语 建立自己的数据库违法吗 法律禁止的危害网络安全的行为 说明dsp的软件开发流程 跟知网数据库相近的查重 中国讯牛网络技术有限公司 服务器与操作系统 北工大的网络安全研究生 正元成图软件录数据库 山东常用软件开发服务价格 浏览器代理服务器尚未连接 暴雪战网链接不到服务器怎么办 浦东新区辅助软件开发问答知识 ftp服务器注册表 北京新一代网络技术标准 软件开发的风险管理 软件开发模型有uml模型 惠州服务器自动生产线 软件开发暑期班 创建数据库连接的接口 软件开发的项目有哪些问题 神经网络技术的发展的成功 网络安全性相关的发展 数据库多进程扫库 为何选择mangodb数据库 土豆怎么挂云服务器
0