extends не работает

274
04 февраля 2019, 00:40

Ругается ошибкой на extends, по книжке всё должно работать. В чём проблема?

ОШИБКА:

Error:(37, 1) java: constructor Person in class com.company.Person cannot be applied to given types; required: java.lang.String found: no arguments reason: actual and formal argument lists differ in length

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Person Papich = new Person("Vitaliy");
        Papich.display();
    }
}
class Person {
    private String name;
    public String getName() {
        return name;
    }
    public Person(String name) {
        this.name = name;
    }
    public void display() {
        System.out.printf("Name : %s", name);
    }
}
class rabotyaga extends Person {
    private String Zavod;
}
Answer 1

У вас конструктор с параметром в суперклассе. Поэтому, когда вы расширяете класс, то должны создать конструктор, который будет вызывать конструктор суперкласса с параметром.

class rabotyaga extends Person {
   private String Zavod;
   public rabotyaga(String name){
      super(name);
   }
}
READ ALSO
Lombok ошибка сборки при помощи Gradle в Docker

Lombok ошибка сборки при помощи Gradle в Docker

Сборка приложения на машине происходит успешно, а вот в Docker контейнере нетСразу напрашивается вопрос, чего-то нахватает, но чего?

201
Двумерный массив ArrayList

Двумерный массив ArrayList

Использовал для своего кода стандартный массив по типу:

189
Преобразование в Map c помощью stream api

Преобразование в Map c помощью stream api

Есть список logList состоящий из элементов класса

234