新的java构造函数帮助需要

时间:2013-11-13 15:24:37

标签: java constructor tostring

我有一个过去的考试问题说: “创建一个类Element,它将元素的名称记录为String,并且有一个返回String名称的公共方法toString。定义类的构造函数(应该接收String初始化名称。“

我试了一下,不要从这里开始......

主要类是:

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;
}
}

7 个答案:

答案 0 :(得分: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;
    }
}

答案 1 :(得分:0)

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

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;
    }
}

答案 2 :(得分:0)

class Element {
    private String name = "";

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

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

答案 3 :(得分: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!";
     }
}

您应该可以将其作为制作自己的构造函数的指南。

答案 4 :(得分:0)

class Element 
{
  private String name = "UNSET";
  public String getName() { return name; }

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

  public String toString() { 
   return getName(); 
  }
}

答案 5 :(得分: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。重要的是,人们要尽早养成良好的习惯。

答案 6 :(得分:0)

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

可能以下可以帮到你。

public class Element {

private String elementName;

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

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

}