Методы вызываются верные, цикл отрабатывает полностью. Я проверял с помощью счетчика. В общем-то, скорее всего, валидатор пропустит через instanceof, но, возможно, я где-то ошибся со switch-ом =)) Если кто-то видит, в чем ниже ошибка и почему валидатор не пропускает, дайте знать!
Спасибо
package com.javarush.task.task14.task1415;
import java.util.ArrayList;
import java.util.List;
/*
Клининговый центр
*/
public class Solution {
public static void main(String[] args) {
List<Apartment> apartments = new ArrayList<Apartment>();
apartments.add(new OneRoomApt());
apartments.add(new TwoRoomApt());
apartments.add(new ThreeRoomApt());
cleanAllApartments(apartments);
}
public static void cleanAllApartments(List<Apartment> apartments) {
//написать тут вашу реализацию пунктов 1-4
for (Apartment a: apartments) {
switch (a.getClass().getSimpleName()){
case "OneRoomApt":{
((OneRoomApt)a).clean1Room();
break;
}
case "TwoRoomApt":{
((TwoRoomApt)a).clean2Rooms();
break;
}
case "ThreeRoomApt":{
((ThreeRoomApt)a).clean3Rooms();
break;
}
default:{
break;
}
}
}
}
static interface Apartment {
}
static class OneRoomApt implements Apartment {
void clean1Room() {
System.out.println("1 room is cleaned");
}
}
static class TwoRoomApt implements Apartment {
void clean2Rooms() {
System.out.println("2 rooms are cleaned");
}
}
static class ThreeRoomApt implements Apartment {
void clean3Rooms() {
System.out.println("3 rooms are cleaned");
}
}
}