java 静态成员访问

public class MqConfig {
    @Getter
    private static IProducerProcessor callBackProducerRetry;
    @Getter
    @Value("${retry.mafka.producer.bgNameSpace}")
    private String bg;
    @Getter
    @Value("${retry.mafka.producer.appkey}")
    private String appkey;
    @Getter
    @Value("${retry.mafka.producer.topicName}")
    private String topicName;

这里面因为属性都是private的,所以,其他的类中,使用只能是getBg,之类的,不能直接mqConfig.bg,这是不对的,因为不是静态成员。

但是 callBackProducerRetry 是静态成员,所以,可以直接访问,类名.callBackProducerRetry 请注意不是实例.callBackProducerRetry;

因为如果是静态成员的话,会存放在方法区,跟你实例化多少个类没有关系,只跟方法有关系。

可以这样访问: MqConfig.callBackProducerRetry;

不能这样 MqConfig mqConfig=new MqConfg();

 mqConfig.callBackProducerRetry,

 

posted @ 2019-02-20 11:55  aspirant  阅读(1286)  评论(0编辑  收藏  举报