현재 개체가 X, Y, Z의 인스턴스인지 확인하고 몇 가지 방법을 적용합니다. (이것들은 단지 그림 :)입니다JAVA - 목록을 사용하여 여러 "instanceof"리 팩터링
내가 (예 : 비교 대상 300 개체가 그러나 경우if (X instanceof Car || X instaceof Bus || ...) {
X.color = RED;
}
: 자동차, 버스, 자전거, 기차, 비행기, ...)가 어떻게 주위를 인수 분해 갈 것은? 목록이나 배열을 만들려고 생각했지만 초기화는 조금 길어 보입니다.
Car car = new Car();
Bus bus = new Bus();
...
List<Transportation> list_t = Arrays.asList(car, bus, ...);
for (Transportation t : list_t) {
if (X instance of t)
X.color = RED;
}
감사의 말을 전합니다.
이러한 종류의 '면'이 있습니까? 클래스 계층 구조가 있습니까, 아니면 하위 클래스가있는 유형이 있습니까? – Bohemian
방문자 패턴을 조사하고 싶을 수 있습니다. – Fildor
왜''X.color = X.getColor();'? 그리고 나서 그것을 단순히'X.setColor();로 변경할 수 있습니다. 그런 다음 자동차, 버스 등을 항상 빨간색으로 유지함으로써 제거 할 수 있습니다. – immibis