加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在Java中使用另一个构造函数

发布时间:2020-12-14 17:47:04 所属栏目:Java 来源:网络整理
导读:考虑: int a = 0; int b = 3; //Constructor 1 public ClassName (int a) { this(a,b); //Error //new ClassName(a,b) //No error } //Constructor 2 public ClassName (int a,int b) { this.a = a; this.b = b; } 第一个问题: 我得到一个错误,说“b应该是
考虑:
int a = 0;
    int b = 3;

    //Constructor 1
    public ClassName (int a) {
        this(a,b); //Error
        //new ClassName(a,b) //No error
    }

    //Constructor 2
    public ClassName (int a,int b) {
        this.a = a;
        this.b = b;
    }

第一个问题:

我得到一个错误,说“b应该是静态的”.为什么我不能以这种方式使用b的默认值(3)?

第二个问题:

在第一个构造函数中,如果我使用注释部分,我不会收到错误.这是否可以接受使用?

解决方法

在类中使用变量时,重要的是注意范围的有效性.你已经实例化了新的a,b变量.你欺骗自己相信这些是相同的变量.其实他们在另一个地址空间.如果要使用您的类变量,则必须将参数取出到函数中.然后他们将与您所在的类同步,而不是将参数a,b隔离到您的函数的范围内,

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读