Метод toString ничего не показывает, когда я запускаю код - PullRequest
0 голосов
/ 16 октября 2019

toString метод ничего не показывает, когда я запускаю код:

public abstract class Employee {

    private String firstName, lastname, socialSecurityNumber;



 Employee(){

    System.out.println("Employee Constructor called");
    firstName="Tony";
    lastname="Stark";
    socialSecurityNumber="3000";
}


    public String getFirstName(){
        System.out.println(firstName);
        return firstName;
    }
    public String getLastname(){
        return lastname;
    }
    public String getSocialSecurityNumber(){
        return socialSecurityNumber;
    }


    public String toString(){

     getSocialSecurityNumber();
     getLastname();
     getFirstName();

        return null;
    }
}

//Main method:
public void ComissionEmployeeTest(){

    Employee checkFirstly=new ComissionEmloyee();
checkFirstly.toString();

}

Ответы [ 3 ]

0 голосов
/ 16 октября 2019

Ваш метод toString должен быть

public String toString(){

 return getSocialSecurityNumber()+
 getLastname()+
 getFirstName();

}

, и вы должны напечатать то же самое, чтобы увидеть значение

System.out.println(checkFirstly);
0 голосов
/ 16 октября 2019

Когда вы вызываете этот метод toString();, вы всегда получаете null в качестве возврата. С вашим методом выполнение System.out.println(e.toString()); всегда совпадает с выполнением System.out.println(null);. Поэтому вам нужно вернуть String, конкатенированный, составленный с переменными. Например:

Измените метод toString следующим образом:

public String toString(){
    //You can customize this as you wish
    return "SN: " + getSocialSecurityNumber() + " Last name: " etLastname() + " First name: " +getFirstName();

}

и назовите его следующим образом:

Employee e = new Employee();
System.out.println(e.toString());

Редактировать

Я вижу, что у вас есть вывод на метод getName, так что new Empoyee().toString(); должен хотя бы что-то выводить.

0 голосов
/ 16 октября 2019

Ваш toString () возвращает ноль. Вместо этого вам нужно вернуть строку.

Пример

public String toString(){
  return String.format("ssn %s firstname %s lastname %s",getSocialSecurityNumber() + getLastname() + getFirstName());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...