Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Классы можно писать не с нуля, а взяв за основу существующий класс. В этом случае эти классы будут является потомком и предком друг для друга. Потомка еще называют подклассом (subclass), а предка - суперклассом (superclass). Еще одна пара названий для таких классов - это класс-потомок и класс-предок.
Если один класс есть потомок другого, то он автоматически умеет делать все то, что умеет делать класс-предок. И нам остается только добавить в него то, чего не было в предке или изменить те методы, работа которых в классе-предке нас не удовлетворяет. В этом одна из главных черт Объектно-ориентированного программирования - если у некоторых объектов есть много общего, то можно для них создать класс-предок, в который записать все общие черты. Отличительные же черты будут реализованы в классах-потомках.
Давайте создадим класс boss, который будет потомком для класса worker из программы выше. Вот текст, который введите с том же файле Test.java, в котором находится класс worker:
class worker
{
...
}
class boss extends worker
{
public int NumOfWorkers; //Количество подчиненных
}
Ключевое слово extends означает, что наш новый класс boss есть потомок класса worker. Мы добавили в него только переменную NumOfWorkers, в которой будет храниться количество подчиненных. Класс же Test измените следующим образом:
...
public static void main(String [] args){
boss bigBoss=new boss();
bigBoss.setAge(41);
bigBoss.Name="Ivan Ivanov";
bigBoss.NumOfWorkers=100;
System.out.println(bigBoss.NumOfWorkers + "\n" + bigBoss.Name);
...
Как вы видите, кроме количества подчиненных для нашего bigBoss мы можем задавать имя и возраст. Они берутся из родительского класса. Все работает, как и ожидалось.
Дата публикования: 2014-11-04; Прочитано: 405 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!