체스 게임을 만들고 있는데, 내 게임 보드에 "더미 (dummy)"조각을 채우려 고합니다. 슈퍼 클래스 조각에서 확장 한 서브 클래스를 만들었습니다. 하위 클래스는 Dummy라고합니다. 어쨌든 나는 그것의 인스턴스를 만들려고하고있다.추상 클래스와 다형성
Piece[][] pieces=new Dummy();
더미 클래스의 생성자는 graphics2d 페인트 메서드와 아무런 관련이 없다. 그러나 컴파일하는 동안 오류가 발생합니다. 그것은 "호환되지 않는 타입 조각 = 새로운 더미(); 필요 : 조각 [] [] 발견 : 더미"
그러나 이것은 조각의 하위 클래스이므로이 선언은 허용 되었습니까?
는 슈퍼 클래스의 인스턴스를 생성하지 않았다고 :
당신은 그렇게 할 수 있습니다? 그것은 추상이 아니기 때문에 이것은 허용되지 않습니다. – user2809437
1) 당신은'조각'이'추상'이라고 말하지 않았습니다. 2) 그건 중요하지 않습니다. 당신은 언제나 참조 타입 인'abstract'의 _array_를 생성 할 수 있습니다. – rgettman
죄송합니다. 하지만 그 정보에 관계없이 감사합니다. – user2809437