Что не так с этим классом Java? - PullRequest
0 голосов
/ 12 ноября 2011

Каждый раз, когда я создаю новый объект Dog в главном классе Java, я не могу заменить «null» (который представляет переменную String Name из класса Dog) на нужную мне строку.Вот этот класс:

private String Name;
private int Age;

public Dog(String Name, int Age) //Constructor {
    this.Name =(String) Name;
    this.Age = Age;
}

public int getAge() {
    return Age;
}

public void setAge(int Age) {
    this.Age = Age;
}

public String getName() {
    return Name;
}

public void setName(String Name) {
    this.Name = Name;
}

Ответы [ 4 ]

6 голосов
/ 12 ноября 2011

Вы сделали свою открывающую скобку своего конструктора для комментария:

public Dog(String Name, int Age) //Constructor { <-- Brace is part of comment

Решение:

public Dog(String Name, int Age) /*Constructor*/ {
2 голосов
/ 12 ноября 2011

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

Возможный вариант исправления -> создайте свой класс следующим образом:

public class Dog { 

private String name;
private int age;

}

Затем в вашей среде IDE перейдите к параметрам генерации кода -> выберите Генерировать геттеры и сеттеры для обоих полей.Выберите конструктор поколения с параметрами.Готово.

1 голос
/ 12 ноября 2011

Попробуйте Dog dog1 = new Dog("James", 2); вместо.Строковый литерал должен быть заключен в двойные кавычки, иначе он будет рассматриваться как переменная.

или, добавьте

String James = "Имя собаки";

до создания экземпляра Собаки с Dog dog1 = new Dog(James, 2);

0 голосов
/ 12 ноября 2011

nice:)

public Dog (String Name, int Age) // Конструктор {

http://java.sun.com/docs/codeconv/html/CodeConventions.doc4.html

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