0

我有一个过去的考试问题,上面写着:“创建一个Element将元素名称记录为 aString并具有一个公共方法的类,toString该方法返回字符串名称。为该类定义一个构造函数(应该接收 aString来初始化名称) 。”

我试了一下,不知道从这里去哪里......

主要课程是:

public class builder { 
public static void main(String[] args) { 
    element builderObject = new element(elementName);

}
}

构造函数是:

    import java.util.*;
class element {
public int getInt(String[] args) {
    Scanner scan = new Scanner(System.in);
    System.out.println("Enter the first number");
    String elementName = scan.nextLine();
    System.out.println("%s");
}

public String toString() {
    return elementName;
}
}
4

7 回答 7

0

您缺少一个构造函数,您可能正在寻找这样的东西

public class Element{
   private String name;

   public Element(String name){ //Constructor is a method, having same name as class
       this.name = name;
   }

   public String toString(){
       return name;
    }
}

我带你的一个注释
是从 java 开始的,在 java 中,类名通常以大写字母开头,因此element应该是Element. 早点养成好习惯很重要。。

于 2013-11-13T15:34:01.417 回答
0

如果没有实际给出答案,我想不出一种方法来解释这一点,所以....

public class Element { /// Create class Element

    private final String name; // Record the 'name'

    public Element(String name) { // constructor receives and sets the name
        this.name = name;
    }

    public String toString() { // public method toString() returns the name
        return name;
    }
}
于 2013-11-13T15:28:16.167 回答
0

您缺少构造函数本身。构造函数的重点是初始化对象,通常通过将给定参数保存到数据成员。例如:

class Element {
    /** A data member to save the Element's name */
    private String elementName;

    /** A constructor from an Element's name*/
    public Element(String elementName) {
        this.elementName = elementName;
    }

    @Override
    public String toString() {
        return elementName;
    }
}
于 2013-11-13T15:28:20.520 回答
0
class Element {
    private String name = "";

    /**
    /* Constructor
    /**/
    public void Element(final String name){
        this.name = name;
    }

    @Override
    public String toString(){
        return name;
    }
}
于 2013-11-13T15:29:13.040 回答
0

你那里没有构造函数。构造函数通常看起来像这样:

public class MyClass {
     private String name;
     private int age;         

     //This here is the constructor:
     public MyClass(String name, int age) {
         this.name = name;
         this.age = age;
     }

     //here's a toString method just for demonstration
     @Override
     public String toString() {
         return "Hello, my name is " + name + " and I am " + age + " years old!";
     }
}

您应该能够将其用作制作自己的构造函数的指南。

于 2013-11-13T15:29:27.120 回答
0
class Element 
{
  private String name = "UNSET";
  public String getName() { return name; }

  public Element(String name) {
    this.name = name;
  }

  public String toString() { 
   return getName(); 
  }
}
于 2013-11-13T15:31:59.190 回答
0

不要沮丧。请先阅读 java 教程并理解其中的概念。您的考试问题非常清楚您需要做什么。至少对于这个问题,您需要知道什么是构造函数,在类中有 toString() 的目的。

可能是下面可以帮助你。

public class Element {

private String elementName;

public Element(String elementName) {
    this.elementName = elementName;
}

@Override
public String toString() {
    return elementName;
}

}
于 2013-11-13T15:36:00.653 回答