老师、怎么在当前类中调用当前类的方法?

老师、怎么在当前类中调用当前类的方法?

老师、我创了一个private int A的变量,并创建了getset方法,但当我要赋值时,用this. SetA(10)赋值时一直报错,想问一下老师是我的赋值方法错了是吗?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕阿园 2021-09-18 13:36:27

同学你好,同学可以根据上面同学所说的原因进行排查下,如果不是该原因,建议同学将代码以及报错信息进行反馈

祝学习愉快~

  • 提问者 嫣语四然 #1

    老师,我是在类内定义的变量,没有赋值的时候不会报错,赋值之后add方法就报错,麻烦老师看一下,谢谢。

    package com.immoc.jjicheng;


    public class WorkTest extends Work {

    // 属性:编写的测试用例个数、发现的Bug数量

    private int A;// 编写的测试用例个数

    private int B;// 发现的Bug数量


    public WorkTest() {


    }


    public int getA() {

    return A;

    }


    public void setA(int a) {

    A = a;

    }


    public int getB() {

    return B;

    }


    public void setB(int b) {

    B = b;

    }

    this.setA(10);

    this.setB(5);

    Work w = new Work("测试工作");

    public void add() {

    System.out.println(w.getWorkName() + "的日报是:今天编写了" +this.getA() + "个测试用例,发现了" + this.getB()+ "bug。");

    }

    }

    2021-09-18 17:59:16
  • 好帮手慕阿园 回复 提问者 嫣语四然 #2

    同学你好,在本类中无法直接调用本类定义的方法,同学可以在add方法中调用set()方法,如

    public  void add() {
       this.setA(10);
       System.out.println(w.getName() + "的日报是:今天编写了" +this.getA() + "个测试用例,发现了" + this.getB()+ "bug。");
    }

    另外同学可以在测试类中通过全参构造来创建对象,给属性进行赋值

    祝学习愉快~

    2021-09-18 18:31:50
慕工程4429044 2021-09-18 13:18:55

我不是老师,哈哈,但是据我猜测,你应该是在方法内定义的变量吧,方法内定义的变量是局部变量,你可以试着在类内定义私有变量,不要在方法里面定义。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师