Как я могу напечатать возраст, вызвав только следующие методы?
У меня есть класс Person (сохраненный как Person.java) . Код приведен ниже.
public class Person { private int age1; public int getAge() { return age1; } public void setAge(int age1) { this.age1 = age1; } }
Затем у меня есть класс Employee, который принимает Person в качестве типа данных. Код приведен ниже.(сохранен как Employee.java)
public class Employee { Person person; private String employeeName; public Person getPerson() { return person; } public void setPerson(Person person) { this.person = person; } public String getEmployeeName() { return employeeName; } public void setEmployeeName(String employeeName) { this.employeeName = employeeName; } }
Тогда у меня есть метод main в отдельном классе Main (Main.java). Код приведен ниже.
public class MainEmployee { public static Employee getEmployeeDetails() { Scanner s = new Scanner(System.in); Employee e = new Employee(); Person p = new Person(); System.out.println("Enter name:"); e.setEmployeeName(s.nextLine()); System.out.println("Enter age1:"); p.setAge(s.nextInt()); return e; } public static void main(String args[]) { Employee e1 = getEmployeeDetails(); System.out.println("name:" + e1.getEmployeeName()); System.out.println("pname:" + e1.getPerson().getAge());//here it's showing error } }
Что я уже пробовал:
System.out.println("pname:"+e1.getPerson().getAge());он бросает NullPointException