java - 继承程序出现编译器错误 58

标签 java inheritance

我的子类中的显示方法不起作用。它给出了错误: Customer.java:17:错误:找不到符号 super 显示(); ^ 符号:方法display() 1 错误 要求或打印对象数据。

 import java.util.Scanner;

 public class Person
 {
 private String name;
 private String address;
 private String number;

 public Person() //No Argument constructor//
 {
 name= "";
 address= "";
 number= "" ;
 }

 public Person(String num, String nam, String add) //Explicit value constructor//
 {
  number= num;
  name= nam;
  address= add;
 }
  public String getName() //Accessor method//
   {
    return name;
   }

  public void setName(String name )//Mutator method//
   {

    this.name= name;
   }

   public String getAddress()
   {
    return address;
   }
   public void setAddress(String address)
   {
    this.address= address;
   }
   public String getTelephoneNumber()
   {
    return number;
   }
    public void setNumber(String number)
   {
    this.number= number;
   }

    public String toString ()
   {
    return name + "\n" + address + "\n" + number;
   }}

子类

     public class Customer extends Person 
     {

     public Customer(String num, String nam, String add) 
     { 
     super (num, nam, add);

     }

     public boolean checkResponse(char response)
      {
      if (response == "Y")
       {return true;}
        return false;
        }
     }
    public void display()
     {
     super.display();
      }
     }

最佳答案

在这里:

 public class Customer extends Person {
    String number=""; // you forgot the type declaration

请注意,父类(super class)中声明的 number 属性在此类中不可见,因为它是私有(private)。一种可能的解决方案是将属性声明为类 Person 中的 protected 属性:

protected String number;

…但无论如何,您无法像在类 Customer 中那样初始化它们(为此使用构造函数)。而且除了不必要之外,父类(super class)已经初始化了它们。

关于java - 继承程序出现编译器错误 58,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20135789/

相关文章:

java - 通过命令行与 JNI 调用

c# - Java 中的 DataTable 等价物

c++ - 正确继承std::string的方法是什么?

c# - 遍历基类和继承类的所有实例

java - 如何以编程方式提取视频帧?

java - 部署和提供 Thrift 服务

java - lucene中增量更新的问题

Python - 从旧式类继承

Java抽象父级在父级构造函数中初始化子级之前调用子级方法

java - 当对象调用其父类(super class)的方法时如何处理对象?