zoukankan      html  css  js  c++  java
  • 静态修饰符

    1:什么是静态变量:静态变量只能存一份,它属于类,不会随对象的创立而建立副本。如果不想在创建对象的时候就需要知道一些相关信息,那么就声明为static类型的。被修饰为static的成员变量不属于对象,他是属于类的。静态成员变量会被该类中的所有对象共享。

    static语法:

    static 成员变量类型 成员变量名称

    static String color="黄色";

    //通过代码来演示修饰符的成员变量属于类,只存一份
    public class xiushifu {
    //声明一个static类型的String类型的变量color
    static String color="绿色";
    创建xiushifu的构造器
    public xiushifu(String color)
    {
    this.color+=color;
    }
    public static void main(String[] args)
    {
    //创建xiushifu的对象实例
    xiushifu t1=new xiushifu("黄色");
    xiushifu t2=new xiushifu("红色");
    System.out.println(t1.color);
    System.out.println(t2.color);
    System.out.println(color);
    }

    }

    静态变量访问:

    当任何一个对象访问静态变量时,保存在类的内存中的公共储存单元中的值也会被修改。

    在静态方法中访问非静态变量:

    public class biangliang {
    static String color="黄色";
    public static void main(String[] args)
    {
    System.out.println(color);
    }
    }

    在非静态方法中访问静态变量:

    public class biangliang2 {
    static String color="黄色";
    public void getMes()
    {
    System.out.println(biangliang2.color);
    }
    public static void main(String[] args)
    {
    biangliang2 t=new biangliang2();
    t.getMes();
    }

    }

    什么是静态常量:

    静态常量是唯一的不变的只存一份数据。在java中用static final两个关键字来修饰成员变量。对于静态常量,系统不会为其分配默认值,程序员必须进行初始化。

    //声明两个静态常量

    public static final int i=11;

    public static final float i=11.0f;

    public static final double PI=3.14;

    static 关键字修饰成员变量是属于类,随类的创建而创建。

    final关键字修饰成员变量的值是不能改变的。

    final关键字和static关键字没有先后之分。

    public class biangliang3 {
    //此为一个静态块
    static
    {
    PI=3.14;
    }
    //声明一个final static类型的String 类型的常量color
    public final static String color="黄色";
    //声明一个final static类型的double类型的变量PI
    public final static double PI;
    public static void main(String[] args);

    {
    System.out.println(color);
    System.out.println(PI);
    }


    }

  • 相关阅读:
    java基础之java今生前世
    java线程的方便调用方式
    await和async更多的理解
    asp.net mvc webapi 实用的接口加密方法
    微信小程序开发心得
    为IEnumerable<T>添加RemoveAll<IEnumerable<T>>扩展方法--高性能篇
    微软常用的组件设计思想-‘工厂的工厂类’
    尝试asp.net mvc 基于controller action 方式权限控制方案可行性
    cookie 和session 详解
    sql注入详解
  • 原文地址:https://www.cnblogs.com/Angella/p/5999963.html
Copyright © 2011-2022 走看看