有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

tostring我正在尝试用Java编写personclass和personTester

到目前为止,对于我的personClass,我有以下几点:

package personclass;

public class Personclass {
private static boolean Personclass;
private int PersonCount;
    public int getPersonCount()
    {
        return PersonCount;
    }

    private String FirstName;
    private String LastName;
    private int Age;
    private Double Height;
    private String Gender;

    public Personclass(String foreName, String surName, int age, Double height, String gender)
    {
        FirstName = foreName;
        LastName = surName;
        Age = age;
        Height = height;
        Gender = gender;
    }

    private String getFirstName()
        {
    return FirstName;
}

private void setFirstName(String foreName)
{
    this.FirstName = foreName;
}

private String getLastName()
{
    return LastName;
}

private void setLastName(String surName)
{
    this.LastName = surName;
}

private int getAge()
{
    return Age;
}

private void setAge(int age)
{
    this.Age = age;
}

private Double getHeight()
{
    return Height;
}

private void setHeight(Double height)
{
    this.Height = height;
}

private String getGender()
{
    return Gender;
}

private void setGender(String gender)
{
    this.Gender = gender;
}

/**
 *
 * @param FirstName
 * @param LastName
 * @param Age
 * @param Height
 * @param Gender
 */
public Personclass(String FirstName, String LastName, int Age, double Height, String Gender)
{
    this.FirstName = FirstName;
    this.LastName = LastName;
    this.Age = Age;
    this.Height = Height;
    this.Gender = Gender;
            ++PersonCount;
}

/**
 *
 * @return 
 */

@Override
public String toString()
{
        return "Person[forename=" + getFirstName() + ", surname=" +  getLastName() +  ", age=" + getAge() + ", height=" + getHeight() +"m" + ", gender=" + getGender() +"]";
}
public String format()
{
        return String.format("%10s %10s %10d %10.2f %10s", getFirstName() , getLastName() , getAge() , getHeight() , getGender());
}

public static void main(String[] args) 
{

}
}

对于我的个人来说,我有以下代码:

package personclass;

public class PersonTester
{
public static void main(String[] args) 
{

        Person person1 = new Person("Joe","Smith",25,1.57,"Male");

        Person person2 = new Person("Sain","Davies",18,1.73,"Female");

        Person person3 = new Person("John","White",22,1.60,"Male");

        Person person4 = new Person("Martin","Taylor",26, 1.54,"Male");

        Person person5 = new Person("Jessica","Clarke",19,1.70,"Female");

        System.out.println(person1.toString());
        System.out.println(person2.toString());
        System.out.println(person3.toString());
        System.out.println(person4.toString());
        System.out.println(person5.toString());

}
}

我遇到的问题是,当我尝试运行personTester时,不会打印任何内容。我该怎么把这五个不同的人打印出来呢


共 (2) 个答案

  1. # 1 楼答案

    有两种可能的解决方案

    1. 应该确保运行的是PersonTester类,而不是Personclass。i、 例如,如果从命令行运行,则应该使用java PersonTester命令

    2. 类的名称是Personclass,但在PersonTester类中,您指的是某个Person类。您应该将Personclass更改为如下内容

      包装类

          public class PersonTester{
      
            public static void main(String[] args) {
      
                  Personclass person1 = new Personclass ("Joe","Smith",25,1.57,"Male");
                  Personclass person2 = new Personclass ("Sain","Davies",18,1.73,"Female");
                  Personclass person3 = new Personclass ("John","White",22,1.60,"Male");
                  Personclass person4 = new Personclass ("Martin","Taylor",26, 1.54,"Male");
                  Personclass person5 = new Personclass ("Jessica","Clarke",19,1.70,"Female");
      
                  System.out.println(person1.toString());
                  System.out.println(person2.toString());
                  System.out.println(person3.toString());
                  System.out.println(person4.toString());
                  System.out.println(person5.toString());
              }
          }
      
  2. # 2 楼答案

    您需要将类PersonTester中main()中的对象设置为Personclass类型。这将使您能够通过该类中的toString()方法打印有关人员的信息