java 对象共享_Java属性可以被所有对象共享的全局属性

如果有属性希望被所有对象共享,则必须将其申明为static属性。

使用static声明属性,则此属性称为全局属性,有时候也称为静态属性。

当一个类的属性申明位static的时候,由这个类产生的多个对象中属性,只需要对其中一个对象的该属性进行修改,即可以修改所有对象的这个属性。

6cb529733fce47961dc4d408864a8ed8.png

若申明为public的时候,则修改申明的对象的属性只修改一个,申明为private的时候报错,因为该属性私有化,不能被方法所调用。

在调用static申明的属性的时候,最好通过类名称来直接调用,因为通过对象来调用不知道该类产生了多少的对象,这样子不太好,所以又把static声明的属性称为类属性,调用的格式位Person_1.coountry="B city";

class Person_1{

private String name;

private int age;

static String country = "A city";

public Person_1(String n,int a){

this.name = n;

this.age = a;

public void info(){

System.out.println("name:"+this.name+"\\t"+"age:"+this.age+"\\t"+"city:"+this.country);

public class static_test {

public static void main(String[] args) {

// TODO 自动生成的方法存根

Person_1 p1 = new Person_1("zhangsan",30);

Person_1 p2 = new Person_1("wangwu",40);

p1.info();

p2.info();

p1.country = "B city";

p1.info();

p2.info();

java中的常用的内存区域

栈内存空间:保存所有的对象名称(更准确的说是保存了引用的堆内存空间的地址)

堆内存空间:保存每个对象的具体属性内容

全局数据区:保存static类型的属性

全局代码区:保存所有的方法定义

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值