首页 > 其他分享 >static关键字

static关键字

时间:2024-08-01 12:52:10浏览次数:13  
标签:count 静态 代码 关键字 static println 类中

static关键字

static关键字是什么?

static是一个修饰符,用于修饰类的成员方法、类的成员变量,static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。 static块可以置于类中的任何地方,类中可以有多个static块。 在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次

  • static 修饰的成员变量和方法,从属于类
  • 普通变量和方法从属于对象
  • 静态方法不能调用非静态成员,编译会报错

静态代码块(static代码块)

静态代码块指 Java 类中的 static{ } 代码块,主要用于初始化类,为类的静态变量赋初始值,提升程序性能

  • 静态代码块类似于一个方法,但它不可以存在于任何方法体中
  • 静态代码块可以置于类中的任何地方,类中可以有多个静态初始化块
  • 如果类中包含多个静态代码块,则 Java 虚拟机将按它们在类中出现的顺序依次执行它们,每个静态代码块只会被执行一次
  • 静态代码块与静态方法一样,不能直接访问类的实例变量和实例方法,而需要通过类的实例对象来访问

static代码块实例

编写一个 Java 类,在类中定义一个静态变量,然后使用静态代码块修改静态变量的值。最后在 main() 方法中进行测试和输出

代码如下(示例):

public class StaticCode {
    public static int count = 0;
    {
        count++;
        System.out.println("非静态代码块 count=" + count);
    }
    static {
        count++;
        System.out.println("静态代码块1 count=" + count);
    }
    static {
        count++;
        System.out.println("静态代码块2 count=" + count);
    }
    public static void main(String[] args) {
        System.out.println("*************** StaticCode1 执行 ***************");
        StaticCode sct1 = new StaticCode();
        System.out.println("*************** StaticCode2 执行 ***************");
        StaticCode sct2 = new StaticCode();
    }
}

标签:count,静态,代码,关键字,static,println,类中
From: https://www.cnblogs.com/luoyiwen123/p/18336434

相关文章

  • this关键字
    当局部变量和成员变量重名时,在方法中使用this时,表示的是该方法所在类中的成员变量。(this指的是当前对象自己)如:publicclassWorld{Strings="World";publicWorld(Strings){System.out.println("s="+s);System.out.println("1-this.s="+this.s);......
  • super关键字
    super关键字目录super关键字两种途径语法格式常见用法访问父类的构造方法访问父类的成员变量访问父类的方法在多态上下文中使用在静态上下文中使用在匿名内部类中使用两种途径调用父类的方法调用父类的构造方法语法格式super.属性名//访问父类的属性super.方法名(参数);......
  • final关键字
    final关键字目录final关键字修饰类修饰方法修饰变量修饰成员变量修饰局部变量修饰基本数据类型修饰引用数据类型修饰类当final修饰类时,表示该类不可被继承。修饰方法当final修饰方法时,表示方法不可被子类覆盖,但是可以重载。修饰变量修饰成员变量如果final修饰的是类变量,......
  • await 调用的函数不一定必须是 async 函数。 await 关键字通常用于 async 函数内部,用
    await调用的函数不一定必须是async函数。 await关键字通常用于async函数内部,用来等待一个Promise对象的解决。但如果被await调用的对象不是Promise,那么它会被直接返回。 functionnotPromiseFunction(){return42;}asyncfunctionexample(){const......
  • 关键字和保留字
    目录关键字(Keyword)定义:特点:保留字(ReservedWord)特点:关键字(Keyword)定义:关键字是被Java语言赋予了特殊含义,用做专门用途的字符串(单词)。它们对Java的编译器有特殊的意义,用于表示一种数据类型或者表示程序的结构等。特点:关键字中的所有字母都是小写。关键字不能用作变量名、方......
  • 关键字和保留字
    1.1概念Java关键字(KeyWord):对Java的编译器有特殊的意义,他们用来表示一种数据类型或者表示程序的结构.保留字(ReserveWord):即它们在Java现有版本中没有特殊含义,以后版本可能会作为有特殊含义的词,或者该词虽然在Java中没有特殊含义,以后版本也不打算使用,但在其它语言中有特殊含义,......
  • 关键字和保留字
    关键字和保留字1.关键字(Keyword)关键字是被Java语言赋予了特殊含义,用做专门用途的字符串(单词)。它们是Java语法的一部分,用于表示特定的数据类型、程序结构等。特点:关键字中的所有字母都是小写。关键字不能用作变量名、方法名、类名等标识符。Java中的关键字:访问......
  • C语言理解——static、extern等
    目录1、static修饰局部变量2、static修饰全局变量3、static修饰函数4、extern修饰变量或函数5、register修饰变量6、const修饰变量7、typedef起别名8、#define文本替换1、static修饰局部变量普通的局部变量创建后是放在栈区中,这种局部变量进入作用......
  • 关键字和保留字
    关键字Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等关键字列表(依字母排序共51组):abstract,assert,boolean,break,byte,case,catch,char,class,const,continue,default,do,double,else,enum,extends,final,finally,......
  • 关键字和保留字
    关键字和保留字关键字访问控制:public,protected,private:用于控制类、方法和变量的访问级别。类和接口:class,interface:用于定义类和接口。extends:用于实现继承。implements:用于实现一个或多个接口。对象和实例:new:用于创建对象实例。this:引用当前......