猿创征文|《Java》【速学】对象static关键字

Stiatic关键字

stiatic是一个用于声明程序结构的关键字,而此关键字可以用于全局属性和全局方法的声明 ,且主要的特点是可以避免对象实列花的限制,在没有实列化对象的时候直接进行此类结构的访问

如何定义一个拥有static属性声明的代码

列:

public class Chinese {
    static String country = "中国";  //声明静态成员属性,暂时不装包
    private String name;   // 普通的成员属性,保存姓名
    private int age;   // 保存 年龄

    public Chinese(String name, int age) {  // 设置属性内容
        this.name = name;   // 设置 姓名内容
        this.age = age;    // 设置 年龄 内容
    }
    // setter getter 略

    public String getInfo() {  
        return "姓名:" + this.name + ",年龄:" + this.age + ",国家:" + this.country;
    }
}
 public static void main(String[] args) {  // 实列化 Chinese 类
        Chinese perA = new Chinese("张三", 10);
        Chinese perB = new Chinese("李四", 11);
        Chinese perC = new Chinese("王二麻", 20);
        perA.country = "伟大的国家";         // 修改 静态属性内容
        System.out.println(perA.country);  // 获取并输出对象信息
        System.out.println(perB.country);
        System.out.println(perC.country);

  }

主:此代码里使用了static才表示公共属性,如果不用此static属性的声明,则会造成各自都拥有不同的此项属性

得出:由static属性定义的内容不在堆内存中,而是在全局数据区;且可以由类中的类内容直接调用,虽然可以通过是实列化对象调用,但是在Java开发中是不提倡的,因为不标准。

而static定义的方法不能用于调用非static的方法或属性,非static定义的方法则可以;而实列化对象在使用非static定义的属性或方法上是不行的,必须要实列化对象之后才行。

static属性有个共同特点,定义一个对象的计数操作,这样后每当调用的无参构造方法时都可以保证自动设置一个titke的属性内容。而在count的累加处理和book类构造中有俩个无参构造和单参构造,不论那个都可以为title设置一个内容,这样就可以通过static属性进行自动命名处理了。

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道墨思冥

你的鼓励将是我最大的动力!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值