Урок 4 - ООП - Java для тестировщиков
Uploader Comments (ytkach)
All Comments (11)
-
51:00 Автор ошибся, нужно создавать объекты
String a1 = new String("aa");
String a2 = new String("aa");
т.к. в классе String уже переопределён метод equals(). Он будет проверять объекты по содержанию, а не по ссылке.
По-моему нужно добавить субтитры с исправлением.
-
48:00 Во многих классах библиотек Java метод equals() переопределён для того, чтобы сравнивать объекты по содержанию, т.к. по умолчанию он проверяет ссылки на объект. Поэтому, если создается класс и планируется сравнивать объекты по содержанию нужно обязательно переопределить метод equals().
-
24:00 Не совсем понял автора про конструктор с модификатором private. Что значит внутри? Данный модификатор запрещает создание объекта. Только при помощи статического метода, который возвращает тип имени этого класса можно создать объект. Т.е.:
static Bike makeBike() { return new Bike(); }
-
13:00 автор говорит про сигнатуру метода. Сигнатура состоит из имени метода, списка аргументов в определённой последовательности. Перегрузка метода будет считаться даже в том случае, если список аргументов будет одинаковый, но последовательность разная. Т.е. drive(String name, int speed) и drive(int speed, String name) - это разные методы, т.к. у них разная сигнатура.
-
Повторюсь, автор неправильно объясняет смысл инкапсуляции. Если бы все члены класса были открытыми то, программист-клиент не понял бы, что с этим классом делать вообще. Поэтому разработчик класса скрывает реализацию класса оставляя программисту-клиенту интерфейс. Инкапсуляция оставляет разработчику класса право изменять полностью код в классе, оставляя тот же интерфейс и не нарушать работу классов, которые используют этот класс.
-
Классный курс. Одни косяк в данном уроке заметил:
String a1 = "aa";
String a2 = "aa";
a1==a2 вернет значение true :-)
Конкретно в данном случае надо писать String a1 = new String("aa");
Вы просто склеили все части?
takeshi851 5 months ago
@takeshi851 Да :) Об этом много кто просил, но я все никак не мог это сделать, потому что не мог найти исходники у себя. Но вот нашел и решил склеить. :)
ytkach 5 months ago