首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修正覆盖错误

修正覆盖错误
EN

Stack Overflow用户
提问于 2015-03-26 23:55:34
回答 2查看 78关注 0票数 0

我试着运行一个程序,但我得到了这四个错误。

TestCusomer.java:25:错误:发票中的toString()不能覆盖对象中的toString() (与第49行相同)

第59行找不到符号。myCustomer.setTrn(112233778) 第60行找不到符号。myCustomer.setPersentage(150)

我的节目如下:

代码语言:javascript
复制
      class Invoice
      {


      int trn; //TAX REGISTRATION NUMBER
      int persentage;
      public Invoice{}

      public int setTrn(int trn){
        this.trn = trn;
      } 

      public int getTrn(){
         return trn;
      }

      public void setPersentage(int persentage){
          this.persentage = persentage;
      } 

      public int getPersentage(){
          return persentage;
      }

      String toString(){
          System.out.println(trn+" : "+persentage);
      }
 }   

 class Customer{

    int trn;
    int charging= 0;

    public Customer(int trn){
        this.trn = trn;
    }

    public int charge(int amount){
        charging = charging + amount;
    } 

    public int charge(int amount , int trn){
        if (this.trn == trn){
            charging = charging + amount;
        }
    }

    String toString(){
        System.out.println(trn+" : "+charging);
    }
}

 class TestCustomer
{
    public static void main(String[] args){
        Customer myCustomer = new Customer(112233778);
        myCustomer.charge(100);
        myCustomer.setTrn(112233778);
        myCustomer.setPersentage(150);

        System.out.println(myCustomer);
    }
}
EN

回答 2

Stack Overflow用户

发布于 2015-03-27 00:00:49

很少的东西,

  1. 您需要声明toString方法为公共
  2. 您需要在toString方法中返回一个字符串
  3. 我强烈建议您在重写方法时添加@Override表示法,以确保实际覆盖该方法。
  4. 之所以会出现cannot find symbol...,是因为这些方法不是在Customer中定义的,而是在Invoice中定义的。
票数 2
EN

Stack Overflow用户

发布于 2015-03-26 23:59:56

您的toString()方法需要返回字符串对象。您正在输出它们中的字符串,但不返回字符串。也让他们公开。

例如,发票类的toString()方法应该是:

代码语言:javascript
复制
public String toString()
{
    return trn  + " : " + persentage;
}

对于第二个问题(找不到符号),这些方法在发票类中而不是在Customer类中,因此不能在Customer对象上调用它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29290993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档