@xaocb

Когда создавать переменную?

public class Dog {
    String name;
    public static void main(String[] args) {
        Dog dog1 = new Dog();
        dog1.bark();
        dog1.name = "Bart";
        
        Dog[] myDogs = new Dog[3];
        myDogs[0] = new Dog();
        myDogs[1] = new Dog();
        myDogs[2] = dog1;
        
        myDogs[0].name = "Fred";
        myDogs[1].name = "Marge";
        
        System.out.print("last dog's name is ");
        System.out.println(myDogs[2].name);
        
        int x = 0;
        while (x < myDogs.length) {
            myDogs[x].bark();
            x = x+1;
        }
    }
    public void bark() {
        System.out.println(name + " says Ruff!");
    }
    
    public void eat() { }
    
    public void chaseCat() { }
}

В результате:

null says Ruff!
last dog's name is Bart
Fred says Ruff!
Marge says Ruff!
Bart says Ruff!

1 вопрос: в результате выдает вначале "null says Ruff!" потому что мы сперва вызвали метод dog1.barc(0); и только потом присвоили значение "Bart" ссылочной переменной dog1?

2 вопрос: Строковая переменная String name; создается внутри класса как и показано в примере, чтобы все объекты Dog обладали ей?
public class Dog {
String name;
public static void main(String[] args) {

3 вопрос: если я захочу в результат добавить еще и возраст (точно так же как и имя- через ссылки из массива: myDogs[0].age = x)- то в классе надо создать еще целочисленную переменную int age?
public class Dog {
String name;
int age;
public static void main(String[] args) {
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
xez
@xez Куратор тега Java
TL Junior Roo
1. Да
2. Да
3. Да.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы