/* * Author: CHEN Yongyuan (Walter) 1930006025 from OOP(1007) * Date: 2022/03/19 * Description: Student class */ public class Student extends LivingThing { /** * Student's pet */ private Animal pet; /** * Constructor */ public Student(String name, Animal pet) { super(name); this.pet = pet; } /** * Getter for pet * * @return Animal */ public Animal getPet() { return pet; } /** * Test */ public static void testStudent() { Cat pet = new Cat("Tom", 1.0); Student student = new Student("Walter", pet); System.out.println(student.getName() == "Walter"); System.out.println(student.getPet() == pet); System.out.println(student.getPet().getName() == "Tom"); System.out.println(student.getPet().getWeight() == 1.0); Dog pet2 = new Dog("Jerry", 1.0); Student student2 = new Student("Walter", pet2); System.out.println(student2.getName() == "Walter"); System.out.println(student2.getPet() == pet2); System.out.println(student2.getPet().getName() == "Jerry"); System.out.println(student2.getPet().getWeight() == 1.0); Animal pet3 = new Animal("Unknown animal", 4.0); Student student3 = new Student("Walter", pet3); System.out.println(student3.getName() == "Walter"); System.out.println(student3.getPet() == pet3); System.out.println(student3.getPet().getName() == "Unknown animal"); System.out.println(student3.getPet().getWeight() == 4.0); Bird pet4 = new Bird("bird", 1.0, 39.0); Student student4 = new Student("Walter", pet4); System.out.println(student4.getName() == "Walter"); System.out.println(student4.getPet() == pet4); System.out.println(student4.getPet().getName() == "bird"); System.out.println(student4.getPet().getWeight() == 1.0); Chicken pet5 = new Chicken("chicken"); Student student5 = new Student("Walter", pet5); System.out.println(student5.getName() == "Walter"); System.out.println(student5.getPet() == pet5); System.out.println(student5.getPet().getName() == "chicken"); System.out.println(student5.getPet().getWeight() == 5.0); } }