2014-09-01 5 views
-1

У меня есть 3 классов в следующем порядке для игры в шашкиJava подклассы и конструктор ошибки

Position - содержит методы и переменные около положение части (элемента в игре).

Piece - абстрактный класс, который содержит общие методы, которые являются общими для шашек и частей короля.

King - содержат методы, относящиеся к царю кусок

В King классе я следующий конструктор, на котором я получил ошибку

public class King extends Piece 
{ 
    public King(Piece checker) 
    { 
     super(checker.getColor(),checker.getPosition()); 
    } 
} 

В Piece классе я следующее:

public abstract class Piece { 

    private Position newPiecePosition; 
    private CheckersColor pieceColor; 


    /** 
    * Create new piece (checker/king) 
    * @param color - color of the new piece 
    * @param position - position of the new piece 
    */ 
    public Piece(CheckersColor color, Position position) 
    { 
     pieceColor = color; 
     newPiecePosition = new Position(position); 
    } 


    private Position getPosition() 
    { 
     Position position = new Position(newPiecePosition.getColumn(), newPiecePosition.getRow()); 

     return position; 
    } 

} 

Где я ошибаюсь и как ее решить?

+3

Почему бы вам не указать ошибку? –

+0

Где getColor? –

+1

Сеттеры и геттеры должны быть публичными, вот в чем смысл. – csmckelvey

ответ

2

Ну, одна проблема:

private Position getPosition()

Вы не можете получить доступ частный метод из конструктора суб-класса:

public King(Piece checker) 
{ 
    super(checker.getColor(),checker.getPosition()); // you are getting a 
                // compilation error here 
} 

Геттеры, как правило, общественность.

+0

это ограничение упражнения, любые дополнительные методы, кроме описанных, должны быть частными – user1977050

+0

Учитель требует частных методов? Тролль его с отражением: 3 Но если серьезно, если ваш учитель учит вас писать частные геттеры, мне жаль вас (wo) человек. – kajacx

+0

Я написал это. в классе Position есть геттер. Как я могу получить к нему доступ? – user1977050

Смежные вопросы