ошибка: конструктор Player в классе Player не может быть применен к данным типам; - PullRequest
2 голосов
/ 29 марта 2012

каждый раз, когда я компилирую свой код, я получаю следующие ошибки:

ошибка: конструктор Player в классе Player не может быть применен к данным типам;

но в нем нет типов. Код в вопросе

public class Team {
private String name;
public Player players[];
public Player temp;

public Team(String inputname, Player players[]) {

    inputname = name;
    this.players = new Player [players.length];
    for( int k=0 ; k<players.length ; k++ )
        this.players[k] = new Player(players[k]); //This is the line with errors.

}

Класс игрока указан ниже:

public class Player {

public String[] name;

public Player(String inputname) {

    name = inputname.split(" ");

}}

Может кто-нибудь сказать, пожалуйста, что здесь не так? Если это поможет, в строке с ошибками player [k] будет строка, похожая на имя, например «Billy Bob».

Ответы [ 3 ]

2 голосов
/ 29 марта 2012

Ошибка в том, что конструктор Player (public Player(String inputname)) ожидает строку, но вы пытаетесь передать ей объект Player (k-й элемент массива players).

Исправление - написать this.players[k] = new Player(inputName);

Таким образом, передавая конструктору строку и сохраняя построенный объект в k-м индексе массива players

2 голосов
/ 29 марта 2012
players[k] 

имеет тип Player, и ваш конструктор ожидает строку:

public Player(String inputname) 
0 голосов
/ 09 января 2015
class CricketPlayer extends Player
{
    CricketPlayer(String var)
    {
    }

    public void Play()
    {
        System.out.println("Play Cricket:-" + getName());
    }
}
...