Java для начинающих. Урок 20: Конструкторы

  Рет қаралды 186,752

alishev

alishev

8 жыл бұрын

МОЙ НОВЫЙ КУРС: • Мой курс "Продвинутая ...
ПРАКТИКА НА JAVA: java-marathon.tilda.ws
Реклама и сотрудничество: alishev.neil@gmail.com

Пікірлер: 173
@alishevN
@alishevN 6 жыл бұрын
Регистрируйтесь на курс "Продвинутая Java": kzfaq.info/get/bejne/qLiVZNmFlbmodGw.html Практикуйтесь в написании Java кода: java-marathon.tilda.ws
@Andrius2005
@Andrius2005 5 жыл бұрын
Здравствуйте! Я не давно начал изучать программирование и меня испугал тот факт, что я почти ничего не понимаю в чужом коде, даже в самом простейшем . Это временно или это я такой ? Хотелось бы узнать ваше мнение ) За ранее спасибо !
@guestguest6442
@guestguest6442 4 жыл бұрын
огромный вопрос - если мы создаём конструктор класса, то получается гетеры-сетеры можно уже не использовать???
@MCLoveKherson
@MCLoveKherson 2 жыл бұрын
@@guestguest6442 а если нам нужно будет поменять значение в процессе работы программы . Как мы их зададим?
@zhenyashypitsyn9647
@zhenyashypitsyn9647 8 жыл бұрын
Прошел все уроки, очень доволен! Нигде не встречал таких офигенных уроков. Спасибо тебе огромное, жду продолжения)
@alishevN
@alishevN 8 жыл бұрын
+Evgeniy Shypitsyn Спасибо вам! Совсем скоро начну делать.
@zhenyashypitsyn9647
@zhenyashypitsyn9647 8 жыл бұрын
+javaRussia Жду)
@gohokla2710
@gohokla2710 Жыл бұрын
@@zhenyashypitsyn9647 как судьба сложилась?
@Aleksis93
@Aleksis93 Жыл бұрын
@@gohokla2710 вот тоже интерестно) либо забил, либо ушел с головой)
@nordone_travels
@nordone_travels 2 ай бұрын
Прохожу курс на джавараш, там бывают непонятные какие-то объяснения, поэтому параллельно смотрю ролики. Мозаика в голове складывается, спасибо!
@user-xz1zb5cw1k
@user-xz1zb5cw1k 5 жыл бұрын
Спасибо огромное! до этого читал много источников, даже проходил видео-курс по работе, но у вас есть талант именно подмечать те детали, с которым обычно юзеру нужно дать более подробную конкретику. В тех исочников где я черпал знания, игнорируют, пожалуй этот важный момент для дальнейшего понимания
@yeh_pro
@yeh_pro 7 жыл бұрын
Просто великолепно. Такого учителя, да в университет. Не прогуливал бы)
@nikaglaz1998
@nikaglaz1998 Жыл бұрын
Спасибо большое!! Учите великолепно, все становится сразу на свои места, какие методы и конструкторы нам говорили :) !!Рада наконец-то ступать на тропу понимания джавы Я с удовольствием сажусь учиться даже в 10 вечера) Желаю успехов !!!!
@user-td6eo9fn6p
@user-td6eo9fn6p 8 жыл бұрын
Спасибо за уроки! В голове все устаканивается, особенно после прочтения других ресурсов. Жду продолжения!
@lsgraalq8738
@lsgraalq8738 Жыл бұрын
как судьба сложилась?
@toten7
@toten7 2 жыл бұрын
Спасибо, огромное за бесплатный курс. И с наступающем уже 2022 )
@yogadogi4984
@yogadogi4984 4 жыл бұрын
Дружище , спасибо тебе огромное за твой вклад! ценю!
@vitaliyk.6371
@vitaliyk.6371 6 жыл бұрын
Очередной урок принес много положительных эмоций и благодарность учителю.Толково,подробно с примерами и пошаговыми объяснениями.Талантливый человек как в программировании,так и в обучении-это сразу понимаешь.Тема методов одна из важнейших для понимания,так как зная,как, что,кем,когда и откуда вызывается, вы не будешь "плавать" в написании правильного кода и в построении программы.Я изучал Java разными методами и через разные ресурсы,но так толково теорию НИКТО и НИГДЕ не объяснил.Огромное спасибо за прошедший урок.Идем дальше!
@sergeyfrolov5237
@sergeyfrolov5237 6 жыл бұрын
Согласен с тобой полностью Сколько искал не мог нормальных уроков найти А эти понятны и просты .СПС УЧИТЕЛЮ !!!
@ValeriyChannel
@ValeriyChannel 3 жыл бұрын
Прекрасно объясняете! Спасибо за ваш труд! Много есть людей, которые умеют программировать, но мало тех, кто умеет доступно объяснить.
@askarslambekov4038
@askarslambekov4038 3 жыл бұрын
До этого всегда скептический относился к материалам в ютюб, но этот канал прям супер! Молодец!
@tanirbergenzamanbek8532
@tanirbergenzamanbek8532 3 жыл бұрын
посмотрите еще фрилансер по жизни
@yuryrol8689
@yuryrol8689 4 жыл бұрын
Просмотрел 20 уроков. Пока все просто и понятно. Признателен за такие полезные сведения, изложенные в максимально доступном виде!
@dmtconst3633
@dmtconst3633 2 жыл бұрын
Лучшее, что я находил в сети! Контент золото! Спасибо💪
@user-rw3vi3et3w
@user-rw3vi3et3w 8 жыл бұрын
Отличные уроки, спасибо!
@Enjellos
@Enjellos 8 жыл бұрын
Спасибо за уроки, очень достойно ! Ждем продолжения !
@alishevN
@alishevN 8 жыл бұрын
+Владислав Карпенко я обязательно доделаю эти уроки в ближайшее время, спасибо что ждете:)
@jon04kmgjzj
@jon04kmgjzj 8 жыл бұрын
Классные уроки, СПАСИБО! Жду продолжения.
@creatorcreator9885
@creatorcreator9885 8 жыл бұрын
Очень хорошо объясняете Жду с нетерпением новых уроков
@alishevN
@alishevN 8 жыл бұрын
+Tima Tima Будут, пока занят очень.
@Quadrad_s
@Quadrad_s 8 жыл бұрын
+javaRussia перегрузка вроде бы возможна и до тех пор пока тип метода разный, а не только параметры или я не прав?
@alishevN
@alishevN 8 жыл бұрын
Данил Ситдиков Тип возвращаемого значения метода? Нет, перегрузка невозможна если у методов одинаковые имена и параметры.
@Quadrad_s
@Quadrad_s 8 жыл бұрын
понял) спасибо за уроки! Ждемс еще
@alishevN
@alishevN 8 жыл бұрын
Данил Ситдиков Пожалуйста!
@timurnuriev6507
@timurnuriev6507 Жыл бұрын
У вас талант объяснять !!
@user-ru8qb9ze1d
@user-ru8qb9ze1d 6 жыл бұрын
Учу java по оф. документации и захожу на ютуб когда не до конца понимаю материал и постоянно смотрю ваши уроки, материал усваивается очень легко, спасиб за ваш труд, лукас и подписка однозначно.)
@MrNeshta
@MrNeshta 8 жыл бұрын
Спасибо за уроки. Ждём новые уроки.
@LoOleg1
@LoOleg1 6 жыл бұрын
Много всего перечетал про конструкторы, у тебя самое доступное обьяснение этой темы, буду смореть и другие твои видое. Спасибо !!!
@fck2trsh
@fck2trsh 7 жыл бұрын
Все предельно понятно, огромное спасибо!
@tuRistst
@tuRistst 8 жыл бұрын
Спасибо за уроки!
@marialinnik1825
@marialinnik1825 5 жыл бұрын
ну оочень доходчиво! спасибо!
@vladyslavponomarenko5076
@vladyslavponomarenko5076 6 жыл бұрын
Спасибо большое за урок!
@user-bw7ov8ip5w
@user-bw7ov8ip5w 6 жыл бұрын
Очень хорошо объясняете!
@Amely808
@Amely808 Жыл бұрын
Спасибо огромное за вашу работу!!!!
@stanislavomelchenko5271
@stanislavomelchenko5271 5 жыл бұрын
Второй раз заглянул , и оба раза понравилось. Хорошо объясняешь и доходчиво . Палец в верх. Спасибо. + подписка
@tigrangegamian1509
@tigrangegamian1509 4 жыл бұрын
блин, и правда крутые курсы, спасибо :)
@user-ow1he8qm2h
@user-ow1he8qm2h 4 жыл бұрын
Уроки очень понятные и доступные. Респект)))
@korumstar9989
@korumstar9989 5 жыл бұрын
Все понятно. Спасибо!
@user-ub6fx6ju9f
@user-ub6fx6ju9f 8 жыл бұрын
Ждем продолжения
@user-ki5pj1ph9w
@user-ki5pj1ph9w 4 жыл бұрын
Отлично обьяснил!
@Sergio-ij7pw
@Sergio-ij7pw 7 жыл бұрын
Какой отличный урок по конструкторам. Точно то, что мне нужно. Спасибо, огромное.
@alishevN
@alishevN 7 жыл бұрын
Пожалуйста!
@user-yy2qb9by4k
@user-yy2qb9by4k 2 жыл бұрын
Огромное спасибо!!!!!!! всё понятно, ура!
@user-dm4ju2yd5j
@user-dm4ju2yd5j Жыл бұрын
блин спасибо большое что объясняете так подробно
@user-ub6fx6ju9f
@user-ub6fx6ju9f 8 жыл бұрын
Спасибо!
@user-hn5ii9du7w
@user-hn5ii9du7w 2 жыл бұрын
Спасибо Вам огромное!!!
@IlyaK.O.
@IlyaK.O. Жыл бұрын
спасибо,это видео помогло мне написать свой конструктор!!!
@user-pv6hy1ct8x
@user-pv6hy1ct8x 7 жыл бұрын
Очень крутые видосы, у автора талант к изложению материала. Знать можно много, а вот передать знания это уже искусство. Спасибо Вам большое.
@alishevN
@alishevN 7 жыл бұрын
Пожалуйста! :)
@izi9818
@izi9818 5 жыл бұрын
Спасибо ДруГг, помог)))
@M27B_our_victory
@M27B_our_victory 3 жыл бұрын
Коротко и по сути!)из 2021!
@noname-to3ld
@noname-to3ld 6 жыл бұрын
спасибо за видео
@prodaction2961
@prodaction2961 7 жыл бұрын
спасибо интересно , а главное просто
@alishevN
@alishevN 7 жыл бұрын
И вам спасибо!
@user-fk7jl4ht1c
@user-fk7jl4ht1c 5 жыл бұрын
Спасибо тебе большое
@Anatoli-bq1pe
@Anatoli-bq1pe 2 жыл бұрын
Благодарю!
@abdulmajitkubatbekov5731
@abdulmajitkubatbekov5731 2 жыл бұрын
Спасибо большое
@NIKOLASPLAY
@NIKOLASPLAY 5 жыл бұрын
Ку из JavaRush)
@satisful
@satisful Жыл бұрын
Вы лучший!!!
@Varadorchik
@Varadorchik 6 жыл бұрын
Спасибоууу!
@yurib1896
@yurib1896 6 жыл бұрын
Великолепное объяснение!Из вас получится прекрасный преподаватель! Так держать! Думаю, что если не зароете свой талант, то сможете писать книги не хуже, а то и лучше, Шилдта.
@oanshee2462
@oanshee2462 10 ай бұрын
Учусь по Шилдту, но время от времени поглядываю в уроки сюда, и они очень помогают. У Шилдта есть проблема сразу без объяснений прыгать в сложную программу, где ты не сразу логику и алгоритм можешь понять, а тебе еще новую тему параллельно понять нужно. Все же я за подход, когда от легкого к сложному постепенно переходят. Но и все таки некоторые тонкости у Шилдта подробнее будут, иногда отстутвуют вовсе. Так что лучше иметь несколько источников.
@ivanbrogovich6779
@ivanbrogovich6779 Жыл бұрын
спасибо большое!!!
@markdeev1111
@markdeev1111 2 жыл бұрын
Какой же ты сильный !
@edgarhovhannisyan9840
@edgarhovhannisyan9840 8 жыл бұрын
Смотрю почти все уроки что есть в youtub-е.. :) ваши очень понятны, по существу и с наглядными примерами... Спасибо! хотелось бы уроков по больше...
@alishevN
@alishevN 7 жыл бұрын
Пожалуйста! Они будут :)
@lsgraalq8738
@lsgraalq8738 Жыл бұрын
как судьба сложилась
@Tyn4tyk
@Tyn4tyk 7 жыл бұрын
уфффф наконец то дошло зачем эти конструкторы нужны!!на других ресурсах не могут толком объяснить,походу сами не понимают ))
@flowersbali6888
@flowersbali6888 6 жыл бұрын
Хорошие уроки
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil 2 жыл бұрын
Спасибо
@ruslankolesnichenko6014
@ruslankolesnichenko6014 6 жыл бұрын
Вопрос: в чём значение написания в main(String[ ] args)? Что значат эти элементы (3шт.) внутри скобок? Почему именно они там фигурируют? В каком случае они подходят и как правильно понимать, что писать в скобках в main?
@Mariam_PinkLotus
@Mariam_PinkLotus 4 жыл бұрын
12/20/2019 УРОК 20 КОНСТРУКТОРЫ Конструктор инициализирует поля для объекта В этом уроке поля дополнительного класса опять приватные Конструкторы нужны для того чтобы полям объекта присуждались значения одновременно с созданием самого объекта. Если пользователь не присвоит им значения, то им значения всё равно присвоятся (там будут какие-то значения которые будут присуждаться в таком случае когда юзер не присудил) 3:25 начинаем писать конструкторы для нашего случая 6:05 - создали конструктор в дополнительном классе и внутри записали код выводящий на экран “Привет с первого конструктора” Три конструктора. Первый - если вызвали и не дали параметры Второй - если вызвали но дали один параметр ИТОГ: Конструктор нужен для того что бы во время создания объекта в основном классе незамедлительно создавался объект со значениями Можно иметь в одном классе несколько методов с одним именем с одним условием что у них разное количество параметров в скобочках
@wickedtorpedo75
@wickedtorpedo75 3 жыл бұрын
не разное количество а комбинация параметров, например можно иметь 2 метода или же Конструктора с одними параметрами, где 1) просто int num 2) массив типа int[ ] arr можно иметь даже 100 методов или конструкторов с одинаковой количество параметром
@user-om9wk6wg1f
@user-om9wk6wg1f 3 жыл бұрын
@@wickedtorpedo75 то есть их колво не вляиет, важно ли то что они передают
@wickedtorpedo75
@wickedtorpedo75 3 жыл бұрын
@@user-om9wk6wg1f ага
@georg1477
@georg1477 5 жыл бұрын
Доброго времени суток. Большая благодарность за понятный и доступный урок. Подскажите, пожалуйста, в коде, который в видео нужны ли два Сеттера setName и setAge, если их функционал выполняют эти 3 конструктора ? Можно ли два Сеттера убрать из кода ?
@user-pv6hy1ct8x
@user-pv6hy1ct8x 7 жыл бұрын
Есть ли в планах видео о статических блоках?
@programer8
@programer8 3 жыл бұрын
4:00 модификатор доступа дефолтного конструктора всегда совпадает с модификатором доступа его класса
@user-db9sd8rc3e
@user-db9sd8rc3e Жыл бұрын
Можем ли мы в конструктор вшить проверку вводимых в параметр данных при создание объекта?
@DavidWillart
@DavidWillart 7 жыл бұрын
Прекрасное изложение материала, без воды, всё по порядку и по существу. Большое спасибо. Есть вопрос по конструкторам. В какой ситуации может быть полезен вызов конструктора внутри конструктора. В уроках встречаю код class Something { int a; int b; public Something(int a, int b) { this(a,b); } }
@alishevN
@alishevN 7 жыл бұрын
Спасибо! По вопросу: Давайте я сразу приведу пример, чтобы стало понятно. У нас есть класс Person, у которого есть поле age. class Person { private int age; } Мы хотим добиться следующего: если при создании человека указывается его возраст - назначить возраст этому человеку, если возраст НЕ указывается - назначить возраст по умолчанию. Предположим, что возраст по умолчанию - 30. Тогда этого мы можем добиться следующей конструкцией: class Person { private int age; // пустой конструктор Person() { this(30); // вызываем другой конструктор, назначаем возраст по умолчанию } // непустой конструктор Person(int age) { this.age = age; } } В данном примере, если при создании объекта вызывается конструктор с возрастом (пример: new Person(15)), то вызывается непустой конструктор. Если вызывается конструктор без возраста (пример: new Person()), то внутри этого пустого конструктора вызывается конструктор с возрастом, который и назначает полю age значение по умолчанию. У вас может возникнуть вопрос: почему в пустом конструкторе мы просто не назначим поле напрямую - this.age = 30; Да, так тоже правильно. Я просто показал вам один из примеров, но иногда вызов конструктора внутри другого конструктора бывает полезным.
@alishevN
@alishevN 7 жыл бұрын
Например когда в конструкторе должна быть какая-то сложная логика. При таком подходе эта логика не дублируется, а помещается только в один конструктор, а все остальные конструкторы вызывают его.
@dmitriykobets1944
@dmitriykobets1944 3 жыл бұрын
Грамотные и опытные, а для чего в этом примере нужны методы setName и setAge?
@mrnezhivi
@mrnezhivi 3 жыл бұрын
Что не урок то плодтвист в стиле: "на самом деле в прошлом уроке всё происходило так, существовал пустой конструкт, но ОН НИЧЕГО НЕ ДЕЛАЛ" и мы такие:"Аааааа..."
@HelloWorld-ps2kd
@HelloWorld-ps2kd 7 жыл бұрын
Спасибо за уроки. Так как ты никто не объяснял еще... ИМХО
@user-bn9wc8db6s
@user-bn9wc8db6s 2 жыл бұрын
Всем привет! Кто ни будь может написать показать пример кода на котором будет ЧЁТКО понятна разница между методом и конструктором? Спасибо!
@ibanezboy2443
@ibanezboy2443 2 жыл бұрын
Привет, idea заставляет меня этот класс human делать static, хотя делал все также, как в видео(
@katerinaromanovskaya9142
@katerinaromanovskaya9142 6 жыл бұрын
Не совсем понятно как взаимодействуют конструкторы и геттеры/сеттеры (геттеры/сеттеры они просто должны быть и все? или к каждому конструктору свои? а если в конструкторе уже указаны параметры?).
@alexmaliar3493
@alexmaliar3493 6 жыл бұрын
сеттеры позволяют менять значение, если надо.
@vvi93
@vvi93 3 жыл бұрын
Очень нравится Ваш канал, спасибо за труд! Вопрос: если сделать конструктор с именем и возрастом, как к нему прилепить сеттер с проверкой? Например, чтобы при создании объекта в параметр не передавали отрицательный возраст и т.д. Спасибо!
@dmitriykobets1944
@dmitriykobets1944 3 жыл бұрын
Задался тем же вопросом. Условие поставил прямо в конструктор и получилось ограничение:
@sokronendow
@sokronendow Жыл бұрын
прямо в конструктор ставите условие if-else для каждого из параметров. например: public Car (String model){ if (model.isEmpty()){ System.out.println("Пустое поле."); } else { this.model = model; }
@AndriiRabinovych
@AndriiRabinovych 6 жыл бұрын
как можно перегрузить конструктор, не дублируя код, то есть другой коструктор будет иметь частично похожее тело, но при этом похожая часть этого тела не будет выглядет также как у первого?
@user-sk7kf7er6f
@user-sk7kf7er6f 4 жыл бұрын
Разве сокрытие данных - это инкапсуляция? может немного стоит разделять эти понятия?
@dwasssik_3333
@dwasssik_3333 8 ай бұрын
Can you please tell me where I can practice on these topics?
@smsp0ll
@smsp0ll 2 ай бұрын
rn
@user-pv6hy1ct8x
@user-pv6hy1ct8x 7 жыл бұрын
И очень бы хотелось видео о нитях.
@alishevN
@alishevN 7 жыл бұрын
Серия видео о многопоточности обязательно будет.
@user-pv6hy1ct8x
@user-pv6hy1ct8x 7 жыл бұрын
Спасибо. Это очень здорово!
@user-ek8vt1cx4v
@user-ek8vt1cx4v 2 жыл бұрын
Не думав,що колись напишу коментар)).Але ти просто великий молодець,з твоїми уроками дуже легко все сприймається і є багато мотивації.
@garryv_ugare6467
@garryv_ugare6467 3 жыл бұрын
Спасибо за видео. Немного не понял, зачем тогда сеттеры, если мы через конструктор сразу указываем и имя и возраст.
@dmitriykobets1944
@dmitriykobets1944 3 жыл бұрын
вот и меня мучает этот вопрос! Тут методы setName и setAge зачем нужны?
@propilen3
@propilen3 11 ай бұрын
Чтобы менять имя и возраст извне после создания объекта. В 18 лет, например, урождённой Вадик превращается в Машу.
@jlutepatop9342
@jlutepatop9342 5 ай бұрын
Здравствуйте! Подскажите на какие клавиши вы нажали что вернули то, что удалили? Пожалуйста подскажите.🤨😔
@vladimirplohotniuk5214
@vladimirplohotniuk5214 4 жыл бұрын
На сколько я понимаю, параметр по умолчанию в качестве аргумента не работает нормально в Java. То что вы предложили в конце видео..., если вы создадите новый экземпляр без параметров, выведет все норм. Но в случае если впишете свои данные в качестве аргументов, то будет ошибка.
@egos_ua
@egos_ua 4 жыл бұрын
Начиная с 10:40, когда в конструкторе без параметров мы устанавливаем значения по умолчанию. Но ведь там не нужно использовать this. Или это условность, чтоб не путаться, пока не прошли это ключевое слово?
@alishevN
@alishevN 4 жыл бұрын
Да, чтобы не путаться.
@Creperman335thebest
@Creperman335thebest Жыл бұрын
Все же в прошлых уроках у нас не было никакого конструктора и джава использовала дефолтный конструктор. Есть же разница между пустым и дефолтным конструктором. Верно же понимаю? Спасибо за ответ
@nordone_travels
@nordone_travels Ай бұрын
Получается, что если конструктор содержит аргументы, то сеттеры бесполезны? Ведь получается мы обращаемся к переменным конструктора напрямую в обход сеттера, когда создаем новый объект? А если сделать конструктор без параметров, то зачем он вообще нужен? Получается 2 варианта или мы удобно одной стройкой создаем объект с указанием аргументов в обход сеттера, либо мы значения каждой переменной назначаем отдельными строками(тогда получается конструктор особо и не нужен). Вот как одновременно сделать так, чтобы можно было создавать объекты с проверкой заносимых значений через сеттер и чтобы при этом объект создавался в одну строку?
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
Добрый день, у меня почему-то говорит, что класс Human типо уже есть (из предыдщуего урока). А у вас нет такой проблемы? Пришлось изменить human на human1
@alishevN
@alishevN 4 жыл бұрын
Да, в проекте не может быть классов с одинаковыми названиями. Старый класс Human можно удалить.
@user-dr8dd1ny6p
@user-dr8dd1ny6p 5 жыл бұрын
только наверное перегрузка конструкторов, а не методов) Ну в плане терминологии. Ну да а принцип тот же.
@user-ze3zo3oq5b
@user-ze3zo3oq5b 8 ай бұрын
А если передать в конструктор пустую строку и отрицательное число то конструктор проинициализирет эти значение? Даля чего тогда сеттер?
@Muhadron
@Muhadron 3 жыл бұрын
что будет с перегруженньІми методами если у меня public void megaMethod (String str){} public void megaMethod (Human human) {} і я визиваю myMegaObject.megaMethod(null);
@alexandrkomar4741
@alexandrkomar4741 3 жыл бұрын
ты сказал перегрузка консрукторов, а потом перегрузка методов. выходит это одно и тоже? То есть консруктор и есть метод? и если у нас есть различные конструкторы с одинакоым названием - это и есть перегрузка метода(конструктора)?
@guestguest6442
@guestguest6442 4 жыл бұрын
Неиль, огромный вопрос - если мы создаём конструктор класса, то получается гетеры-сетеры можно уже не использовать???
@alishevN
@alishevN 4 жыл бұрын
Нет, обычно в классах бывают и конструкторы, и геттеры/сеттеры.
@guestguest6442
@guestguest6442 4 жыл бұрын
@@alishevN так и понял, спасибо! Так сказать - лучше создавать и конструктор и геттеры-сеттеры вместе в классе...
@PhilipPreobrazhensky
@PhilipPreobrazhensky Жыл бұрын
Почему в конструкторе мы обращаемся напрямую к полям, а не через методы set?
@sokronendow
@sokronendow Жыл бұрын
проще ведь при создании объекта сразу указать его параметры, чем через сеттер. это быстрее + меньший объем кода. плюс Наиль же сказал, что без конструктора у нас есть возможность создать пустой объект класса, а это бред, т.е. зачем создавать пустой объект класса и потом начинять его полями, если можно сразу создать объект класса с полями?
@sokronendow
@sokronendow Жыл бұрын
а сет не нужны для обращения потому что мы ведь создаем конструктор класса, который имеет поля. они ему принадлежат соответственно доступны и конструктору этого класса.
@kiranis2174
@kiranis2174 6 жыл бұрын
В конце урок же не закончен ,у меня не вышло вызвать этот пустой метод! public Human() { this.name = "Имя по умолчанию"; this.age =0;
@strongmisha
@strongmisha 6 жыл бұрын
Ни фига у меня тоже не вызывает я в ij работаю!!!!
@user-or3zo3wi6y
@user-or3zo3wi6y 6 жыл бұрын
Он просто присваивает, вы этого не видите, все работает
@etot-gus
@etot-gus Жыл бұрын
а как тогда сеттеры и гетеры
@ilytoowee1372
@ilytoowee1372 Жыл бұрын
Если сделать конструктор(как в видео, с именем и возрастом), то сеттер (с именем и возрастом) не нужен?
@propilen3
@propilen3 11 ай бұрын
Не нужен, если не предполагается менять имя и возраст у созданного объекта позднее
@user-zu1id3xg9i
@user-zu1id3xg9i 6 жыл бұрын
Получается, что конструкторы заменяют сеттеры?
@alishevN
@alishevN 6 жыл бұрын
Почему заменяют? Это еще один способ инициализировать поля ваших объектов. Конструктор инициализирует поля только при создании объекта, а сеттеры могут инициализировать поля после создания объекта и также могут менять значения полей.
@programer8
@programer8 3 жыл бұрын
в каком-то смысле да, с помощью сетеров можно изменять значения полей обьекта сколько угодно раз, с помощью конструктора всего 1 раз, при создании обьекта
@andreywest9269
@andreywest9269 7 жыл бұрын
А зачем тогда в этой программе нужны сет методы? Если мы получаем доступ к приват полям через конструкторы?
@Le_schiffer
@Le_schiffer 7 жыл бұрын
Ты получаешь доступ не к приват полю, а к значению, которое это поле хранит
@bonefire2725
@bonefire2725 4 жыл бұрын
Наверно сюда мало кто заглядывает, но на всякий случай задам вопрос. Если в нашем классе Human мы уже создали геттеры и сеттеры, то на сколько неправильным было бы заполнять конструктор с помощью this.setName(name) и this.setAge(age)? Влияет ли это как нибудь на производительность? И вообще такое практикуется на настоящих проектах?
@alishevN
@alishevN 4 жыл бұрын
Это нормальный подход. В конструкторе можно вызывать сеттеры.
@dmitriykobets1944
@dmitriykobets1944 3 жыл бұрын
@@alishevN тогда получается мы и в сеттерах задаем значение name и age, и в параметрах объекта их задаем? как это так???
@user-ej5uu8cj9p
@user-ej5uu8cj9p Жыл бұрын
@@dmitriykobets1944 наверное уже поздно но для других людей которые наткнуться на этот вопрос: параметры конструктара передадуться сеттеру, а сеттер установит значения.
@marianfree3543
@marianfree3543 7 жыл бұрын
не понимаю почему пользователь задает сколько параметров будет в обьекта.Мы же пишем код и делаем что нужно ввести пользователю для того чтоб создать обьект.Может обьяснить?
@Lexoid65
@Lexoid65 7 жыл бұрын
Почему же пользователь задаёт? Набор необходимых параметров, которые необходимо будет передать в конструктор при создании экземпляра класса задаёт именно разработчик при описании конструктора в теле пользовательского класса (ведь именно мы задаём сигнатуру метода, а не какой-нибудь абстрактный пользователь). Пользователь, это тот человек, который будет пользоваться конечным продуктом посредством разрешённого для этих целей интерфейса. Если разработчик посчитает нужным, чтобы при создании экземпляра класса обязательно были проинициализированы всё поля класса (к примеру, имя и возраст человека), то он создаст в теле класса один единственный конструктор, который будет принимать на вход аргументы отвечающие за инициализацию возраста и имени. В этом случае, пользователь не сможет оставить параметры пустыми или поставить свой набор параметров, которые не будут соответствовать сигнатуре конструктора, который был описан в пользовательском классе.
@15bleach51
@15bleach51 4 жыл бұрын
Жаль что видео всего в 720p
@murtazina_raisa
@murtazina_raisa 2 жыл бұрын
У меня почему-то при создании класса Human ругается на то, что название Human уже было в уроке 19
@p0gchamp
@p0gchamp Жыл бұрын
у меня тоже
@murtazina_raisa
@murtazina_raisa Жыл бұрын
@@p0gchamp попробуйте переименовать в Human1 например. Это из-за того, что класс Human был уже в другом пакете
@DolphinArtem
@DolphinArtem 2 жыл бұрын
То есть конструктор это тоже функция? Это я к вопросу перегрузки.
Java для начинающих. Урок 23: StringBuilder
15:14
DAD LEFT HIS OLD SOCKS ON THE COUCH…😱😂
00:24
JULI_PROETO
Рет қаралды 17 МЛН
I'm Excited To see If Kelly Can Meet This Challenge!
00:16
Mini Katana
Рет қаралды 17 МЛН
Дженерики в Java. Проще чем кажется.
21:36
Игорь Мешалкин
Рет қаралды 15 М.
Вся база SQL для начинающих за 1 час
1:19:48
Vlad Mishustin
Рет қаралды 245 М.
5.(Java) Методы и конструкторы
28:17
Programmist.ты
Рет қаралды 752
Принципы ООП. 1. Инкапсуляция
8:55
Sergey Nemchinskiy
Рет қаралды 195 М.
Java. Для чего нужен Optional?
18:26
Sergey Arkhipov Java Tutorials
Рет қаралды 12 М.
DAD LEFT HIS OLD SOCKS ON THE COUCH…😱😂
00:24
JULI_PROETO
Рет қаралды 17 МЛН