Заведём жабу? Часть 10. Полиморфизм.

Полиморфизм

Полиморфизм — одно из важнейших понятий ООП, тесно связанное с наследованием. Слово полиморфизм происходит от слова полиморфный — то есть имеющий разные формы. Если есть родительские и дочерние объекты и в них есть одинаковые методы, то Java будет сама определять какой из методов нужно выполнить во время выполнения программы.

Рассмотрим на примере. Открываем Netbeans, файл MyFirstProgram. Для начала внесём изменения. В файле Computer.java изменим модификаторы доступа переменных с public на protected, чтобы получать к ним доступ из класса Notebook.

Изменим первый конструктор в классе Computer следующим образом:

public Computer(String name) {

this.name = name;

}

Класс Notebook переделаем следующим образом:

package testobject;

public class Notebook extends Computer{

public Notebook(String name) {

super(name);
}

public Notebook (String name, int ram, int hdd, double weight) {

super(name, ram, hdd, weight);
}

@Override
public void on(){

print("Notebook. Я включился. Моя модель " + getName());

}

@Override
public void load() {

}
}


Ключевое слово super говорит нам о том, что мы будем использовать переменные из родительского класса Computer. В общем наши файлы могут выглядеть примерно так:

Читать дальше …