java——静态变量static的优点

2019年2月17日00:32:13 发表评论 1,235 views
/**
 * Created by xabcd on 2019/2/17.
 */
class java_static
{
    String name;
    static String city = "中国";
    int age;
    public java_static(String name,int age)
    {
        this.name = name;
        this.age = age;
    }
    public String talk()
    {
        return "我是:"+this.name+"今年"+this.age+"岁,来自:"+city;
    }
}





/**
 * Created by xabcd on 2019/2/17.
 */
public class test_static
{
    public static void main(String args[])
    {
        java_static t1 = new java_static("张三",34);
        java_static t2 = new java_static("李四",25);
        java_static t3 = new java_static("王五",18);
        System.out.println("修改之前的信息:"+ t1.talk());
        System.out.println("修改之前的信息:"+ t2.talk());
        System.out.println("修改之前的信息:"+ t3.talk());
        t1.city = "美国";
        System.out.println("修改之后的信息:"+ t1.talk());
        System.out.println("修改之后的信息:"+ t2.talk());
        System.out.println("修改之后的信息:"+ t3.talk());
    }
}




修改之前的信息:我是:张三今年34岁,来自:中国
修改之前的信息:我是:李四今年25岁,来自:中国
修改之前的信息:我是:王五今年18岁,来自:中国
修改之后的信息:我是:张三今年34岁,来自:美国
修改之后的信息:我是:李四今年25岁,来自:美国
修改之后的信息:我是:王五今年18岁,来自:美国




此处只要当中有一个对象修改了city属性的内容,则所有的对象都会被同时修改。
用static方式声明的属性,也可以用类名直接访问,拿上面的程序来说,如果想修改city的属性值,可以直接用以下的方式:
java_static.city = "美国"

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: