프로젝트에는 4 개의 클래스가 있습니다. 사람, 사람을 확장하는 직원 및 직원을 확대하는 학업. 나는 Array에 대한 사용자가 만든 대안 인 Store도 가지고 있습니다. Store의 함수 중 하나는 'elementAt()'입니다.이 요소는 Store에서 객체를 반환합니다.Controller 클래스의 instanceOf가 정상입니까? (다른 클래스는 편집 할 수 없습니다.)
내가 가진 문제는 elementAt()가 항상 Person 유형으로 반환된다는 것입니다. 이는 Controller 클래스에서 사용자가 Academic에만 적용 할 수있는 작업을 수행하기 전에 사용자가 실제로 직원을 선택했는지 여부를 확인해야하기 때문에 큰 문제입니다.
public Person elementAt(int index)
{
// Returns element at position index
return list[index];
}
큰 문제가 있습니다. 프로젝트 명세에 따르면 나는 Person, Employee, Academic 또는 Store 클래스를 더 이상 변경할 수 없다. 의미, 어딘지 내 컨트롤러 클래스 내에서 어딘가에 저장소 인덱스의 유형을 결정해야합니다.
더 많은 경험을 가진 사람들이이 프로그램을 실행하고 싶었습니다.
나는 이것을 하드 코드하는 잘못된 방법이라고 생각하며 (암시 적으로 대상이 sth을 수행하는 것을 허용하는 의미가 아니라 사용 권한이 객체에 대해 수행된다는 의미에서) 암시 적으로 생성한다고 생각합니다. 개체에 의해 수행되거나 수행 될 수있는 작업은 사용 권한에 의해 결정되어야합니다. Imho는 처리 할 객체에 대한 메소드 인터셉터 검사 규칙을 훨씬 더 깔끔하게 접근 할 수 있습니다. –