Есть класс User. От него наследуется класс Friend и больше ничего в нем нет, то есть:
public class Friend extends User {
}
Я решил, что так "красивее", в частности, когда метод getFriends возвращает не List, а List. Применяется ли такой подход на практике?
Хотелось бы также узнать применяется ли это в моделях, в частности. То есть, в классах, где лежат данные и их геттеры/сеттеры
Ответы
Ответ 1
Да, когда это необходимо, например в исключениях:
class MathException extends Exception{}
class OverflowException extends MathException{}
class DivByZeroException extends MathException{}
или где активно используется reflection.
Ответ 2
Применяется. В тех случаях когда тип несет какую-то особенную смысловую нагрузк
- коллеги приводили случай типизированного Exception - это один из таких случаев.
Другим вариантом может быть например привязка поведения/логики/слушателя/событи
к конкретному типу, например:
if(user instanceof Friend) {
//blah-blah
}
Комментариев нет:
Отправить комментарий