Задать вопрос
@JavaStud

Почему не работает return в java?

Не работает return в методе say() (class Pet), когда вызываю из супер класса, такая же ситуация когда из мейна вызываю метод say()(class Fish) здесь я пытался переопределить метод say () из класса Pet.

1)
public class Pet {
    int age;
    float weight;
    float height;
    String color;

    public void sleep() {
        System.out.println("Спокойной ночи! До завтра");
    }

    public void eat() {
        System.out.println("Я очень голоден, давайте перекусим чипсами!");
    }

    public String say(String aWord){
        String petResponse = "Ну ладно " + aWord;
        return petResponse;
    }
}

2)
public class Fish extends Pet {


    int currentDepth = 0;

    public int dive(int howDeep) {
        currentDepth = currentDepth + howDeep;
        System.out.println("Ныряю на глубину " + howDeep + " футов");
        System.out.println("Я на глубине " + currentDepth + " футов ниже уровня моря");
        return currentDepth;
    }
    public String say(String something) {
        return "Рыбы не разговаривают";
    }
    }

3)

Вызываю в мейне:
public class PetMaster {
    public static void main(String[] args) {
        Pet myPet = new Pet();
        Fish myFish = new Fish();
        myPet.say("давай");
        myFish.say("давай");
    }
}
  • Вопрос задан
  • 469 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
lxsmkv
@lxsmkv
Test automation engineer
Ну так, а куда значение возвращается-то? В пустоту! Кто возвращаемое значение выводить должен? Оберни хотя бы в System.out.println() - сразу все увидишь.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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