возникли проблемы при добавлении в коллекцию - PullRequest
1 голос
/ 17 февраля 2010

Я добавляю информацию о разных книгах, cd, dvd из main () Я пытаюсь использовать наследование в этом проекте ...

Во-первых, я новичок, так что имейте это в виду, когда вы мне помогаете. пожалуйста, постарайтесь сделать это по-настоящему простым ... Я опубликую частичный код, где мне нужна помощь, а затем выложу полный код внизу

теперь в классе предметов

Я не уверен, что я делаю с передаваемым элементом?

class CD extends Item
{

private String artist;
private String members;
private int number;

public CD(Item musicCD, String... members)  // need help
{
    members = members;

}

пожалуйста, имейте в виду, что я новичок в Java. Спасибо ..

Ответы [ 2 ]

3 голосов
/ 17 февраля 2010

Вероятно, это вопрос домашнего задания, но я думаю, что вы слишком много начинаете, прежде чем разбираетесь во многих более мелких концепциях. Если это из книги, вы можете сначала сделать несколько простых упражнений. Существует слишком много концепций, с которыми вы, вероятно, не знакомы и которые вовлечены в создание этой системы.

На первый взгляд, есть несколько проблем:

1) Я не видел, где вы инициализировали свои наборы. Прямо сейчас они будут нулевыми - вы только что объявили их. Возможно, вы захотите хэш-набор или древовидную.

2) Ваши различные классы не поддерживают одинаковые или хеш-коды, вы увидите проблемы, когда вставите и попытаетесь получить их.

3) Добавление участников группы не должно создавать новый компакт-диск - вы уже передаете компакт-диск или хотя бы идентификатор, который вы можете использовать для поиска компакт-диска в вашем наборе.

4) Ваш конструктор CD испорчен. Например, почему вы получаете элемент CD в качестве первого параметра? Кроме того, вы можете не устанавливать права участников. Попробуйте что-то вроде этого.members = members

0 голосов
/ 17 февраля 2010

Поскольку вы используете HashSets, вам нужно будет переопределить методы equals и hashcode, как указано @Uri Вот хорошая статья с примерами для этого. Это стоит прочитать, чтобы вы точно знали, что делаете.

Равенство и хэш-код в Java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...