Добрый день, уважаемые форумчане.
Изучаю Java в JR и параллельно по книге Г.Шилдта "Java полное руководство." Возник вопрос по поводу темы суперклассов и подклассов. Вопрос заключается в следующем:
Г.Шилдт научил меня создавать суперкласс и его подкласс, также научил использовать их. Показывая примеры их реализации, Шилдт получает ссылку на объект суперкласса. Далее переменная ссылки объекта на суперкласс ссылается на объекты подкласса, чтобы потом с помощью это ссылки вызвать метод, перезаписанные в каждом подклассе.
Непосредственно пример:
Вот как учит Шилдт:
class Main{
public static void main(String[] args) {
Figure f=new Figure(3,4);
Rectangle r=new Rectangle(2,4);
Triangle t=new Triangle(2,3);
Figure figref;
figref=f;
System.out.println(figref.area());
figref=r;
System.out.println(figref.area());
figref=t;
System.out.println(figref.area());
Вот как написал я и получит тот же результат:
class Main{
public static void main(String[] args) {
Figure f=new Figure(3,4);
Rectangle r=new Rectangle(2,4);
Triangle t=new Triangle(2,3);
System.out.println(f.area());
System.out.println(r.area());
System.out.println(t.area());
}
}
Это просто пример, раскрывающий вопрос присваивания ссылок и использования их? Или я что-то упускаю из виду, пренебрегая ссылками?
Эдгар Фишер
41 уровень
Динамическая диспетчеризация методов
Решен
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
JustinianJudge в Mega City OneMaster
22 июля 2019, 16:01
Это просто пример, как и большинство кода в Шилдте
0