java 变量共享_java对象,共享变量

我这里有一个简单的问题.

如果我在一个在主类中声明[声明]的对象中声明一个变量,如下所示:

public static int number;

(

通常我这样声明:

private int number;

)

它可以用在主要类中也被声明的不同对象中吗?

顺便说一句我不关心安全问题,我只想做点工作,不关心保护)

解决方法:

这是Java语言规范的一个引人注目的引用:

If a field is declared static, there exists exactly one incarnation of the field, no matter how many instances (possibly zero) of the class may eventually be created. A static field, sometimes called a class variable, is incarnated when the class is initialized.

A field that is not declared static (sometimes called a non-static field) is called an instance variable. Whenever a new instance of a class is created, a new variable associated with that instance is created for every instance variable declared in that class or any of its superclasses.

[Example program follows…]

简而言之,静态字段是一个类变量:它属于类,而不是类的实例.在某种程度上,您可以将静态字段视为由类的实例共享的变量,但将静态字段视为属于该类更加一致,就像静态方法也属于类等一样.

由于它们属于该类,因此它们不需要所述类的实例来访问(假设足够的可见性),并且实际上通过实例而不是类型表达式访问静态成员被认为是不好的编程习惯.

相关问题

标签:java,static-members

来源: https://codeday.me/bug/20191002/1841732.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值