• java基础之static的用法


    static(静态)
    static可以修饰方法,属性,自由块和内部类
    使用static修饰这些成员,可以理解成与类相关。通过“类名.成员”的形式调用,
    没有static修饰可以理解这些成员与对象相关,可以通过“对象名.成员”的形式调用
    注意:static不能用来修饰构造方法

    1.static修饰方法 如:main方法
    main()是java引用程序的主入口方法,在该方法前添加static修饰表示该方法与类相关,java解析运行时将会
    寻找该方法,之所以将main()定义成类相关,解析器调用该方法时,还没有创建当前的对象,因此不能定义成
    与对象相关的方法。
    注意:static修饰方法中,不能调用没有stataic修饰的方法和属性,也不能使用this和super。

    2.static修饰属性。
    静态属性具有static方法的特点外,还有一个主要的特征就是:静态属性被当前类中多个对象共享时,
    一个对象修改对象的值后,会影响其他对象。
    public class Test{
    public static int count=0;

    public Test(){
    count++;
    }
    public static void main(String[] args){
    Test t1=new Test();
    system.out.println(t1.count);
    Test t2 = new Test();
    system.out.println(t2.count);
    }

    }
    输出的结果是1和2.
    上例子中,count是一个静态变量,因此t1和t2共享count.当创建t1对象时,构造方法将count加1,
    当再次创建t2对象时,count在次基础上在加1。

    3.static修饰自由块
    自由块是放在{}括起来的代码段,自由块中的代码在构造方法之前执行,因此可以将一部分初始化代码放在自由块中。
    当使用static修饰自由块时,自由块江变成静态自由块,通常用于初始化静态变量,静态自由块与类相关,因此只要类加载,
    即使没有对象也会执行,静态自由块无论创建几个对象,仅执行一次。
    public class Test{
    private static int i;
    static{
    system.out.println("静态自由块");
    i++;
    }
    public void show(){
    system.out.println(i);
    }
    public static void mian(String[] args){
    Test t1 = new Test();
    t1.show();
    Test t2 = new Test();
    t2.show();
    }

    }
    创建两个对象时,静态自由块也是执行一次。

  • 相关阅读:
    宝宝打疫苗
    【小工具】2. 需要对测试用的数据进行MD5加密
    【小工具】1.需要对txt存放的测试数据做去重处理
    【Jenkins】定时构建语法
    【bug】记一个有趣的“bug”
    1.由于测试某个功能,需要生成500W条数据的txt,python代码如下
    开发基于vue前端框架下的系统的UI自动化,记录总结踩的坑
    使用Chrome-headless模式下,截屏不全屏的问题
    Chrome-headless 模式,没有UI界面的自动化UI测试
    【selenium】Webdriver的原理以及工作流程
  • 原文地址:https://www.cnblogs.com/weijingboke/p/5960248.html
Copyright © 2020-2023  润新知