그래서 저는 실제 (학업 프로젝트를 제외하고) 프로그래밍에 익숙하지 않으며 instanceof
특정 객체가 어떤 클래스인지 결정하는 데 사용하는 것이 좋지 않다는 많은 게시물을 보았습니다 .
내 상황은 기본 제품 클래스, 그중 하나를 확장하고 다른 하나를 확장하는 세 가지 클래스가 있다는 것입니다. 이것들은 모두 데이터베이스의 동일한 테이블에 저장되어 있으며 각각의 메소드를 사용하여 데이터를 가져 오는 코드가 있습니다.
이 방법으로 해결하는 가장 좋은 방법은 무엇입니까? 다형성에 대한 몇 가지를 읽었지만 문제를 해결하는 예를 찾을 수 없습니다. 그들은 일반적으로 다른 객체에서 다른 것을 가져와야하기 때문에 작동하지 않는 방법을 대체합니다.
이 작업을 수행하는 더 좋은 방법이 instanceof
있습니까? 아니면 객체에 특정한 필드를 얻기 위해 반사 또는 일종의 반사를 사용하고 있습니까?
getSpecifics()
각 클래스에 데이터의 특정 반환과 함께, 각각 다르게 구현?
instanceof
가 잘못된 것은 아닙니다 . 객체의 클래스를 찾으려고 시도하는 것이 일반적으로 문제입니다. 항상 틀린 것은 아니지만 아마도 귀하의 경우에는 그렇습니다. 어쩌면 당신이 달성하려고하는 것을 말하면 다형성을 사용하는 솔루션을 제안 할 수 있습니다.