Java для начинающих. Урок 18: Инкапсуляция. Сеттеры и геттеры.

Sdílet
Vložit
  • čas přidán 10. 10. 2015
  • МОЙ НОВЫЙ КУРС: • Мой курс "Продвинутая ...
    ПРАКТИКА НА JAVA: java-marathon.tilda.ws
    Реклама и сотрудничество: alishev.neil@gmail.com

Komentáře • 224

  • @alishevN
    @alishevN  Před 6 lety +12

    Регистрируйтесь на курс "Продвинутая Java": czcams.com/video/rRe1vT0SDD8/video.html
    Практикуйтесь в написании Java кода: java-marathon.tilda.ws

    • @user-oq2qz1st3f
      @user-oq2qz1st3f Před rokem

      привет подскажи разве 1 метод не делает то что делают два других. но более компактнее 1) String name (String x) {
      name = x;
      return name;
      }
      ----------------------------------------
      2) void name1(String x) {
      name = x
      }
      3) String name2() {
      return name
      }

    • @dwasssik_3333
      @dwasssik_3333 Před 7 měsíci

      скажите пожалуйста где можно попрактиковаться по этим темам?

  • @AlexandrEvstratenko
    @AlexandrEvstratenko Před 8 lety +170

    Только здесь получил ясное представление о геттерах и сеттерах. Огромное тебе спасибо, добрый человек, за твой труд!

    • @alishevN
      @alishevN  Před 8 lety +8

      +Alexandr Evstratenko Пожалуйста!

    • @sinicynvalua
      @sinicynvalua Před 6 lety +5

      Тип данных в параметрах метода, указывает на то, значение какого типа данных, метод может принять от объекта на хранение. Да, и еще важно понять, что поля - характеристики объекта, методы - средства работы с полями, а сам объект - immutable. ) В этом суть ООП. Прекрасный курс. Спасибо.

  • @Vitalik26011986
    @Vitalik26011986 Před 6 lety +96

    Видео уже 2.5 года, но только у этого Человека я понимаю ВСЕ темы которые меня интересуют, спасибо за труды!

    • @Serge_g900
      @Serge_g900 Před 2 lety +1

      Видео уже 6 лет, и всё тоже что и у вас) Молодец парень, хорошие видео сделал, спасибо.

    • @d0cct0r36
      @d0cct0r36 Před 2 lety +2

      @@Serge_g900 жаль, что год уже видосы не выходят(

    • @user-dp1dx3ir6j
      @user-dp1dx3ir6j Před rokem +1

      Уже 7 лет прошло, а лучше так никто и не объясняет, классика в общем)

  • @Iago_Fuentes
    @Iago_Fuentes Před 2 lety +20

    2021 на дворе) что-то принципиально поменялось?) вроде все так же актуально) спасибо за уроки!!!

  • @user-zl9ru6yv8i
    @user-zl9ru6yv8i Před 8 lety +16

    Не перестаю радоваться что нашел этот канал! Все замечательно, спасибо за уроки!

  • @mikitamikitovich6877
    @mikitamikitovich6877 Před 4 lety +28

    можно добавить что например в IDEA при помощи нажатия alt + ins можно автоматические создавать геттеры и сеттеры
    только не забудьте ввести переменные!

  • @user-xl7px3mh8t
    @user-xl7px3mh8t Před 4 lety +1

    Как всегда почерпнул много того, что не замечал в других источниках! Спасибо!

  • @vitaliyk.6371
    @vitaliyk.6371 Před 6 lety +4

    Прекрасное представление по всем темам.Разобрался сразу с теми вопросами,в котрых плавал(вызовы методов,void,return).Огромное спасибо,очень стоящий курс!

  • @user-em3yi6zr7b
    @user-em3yi6zr7b Před 7 lety +1

    Грамотно и лаконично все рассказал - пятерка в дневник)) Спасибо!!

  • @samirbagamaev93
    @samirbagamaev93 Před rokem +2

    БРО, ТЫ ПРОСТО ЛУЧШИЙ
    Я УЖЕ ДУМАЛ ЗАБРОСИТЬ ОБУЧЕНИЕ

  • @Sultan-ym6lo
    @Sultan-ym6lo Před 3 lety +2

    Почему я не знал этого канала 5 лет назад 👍 .... Спасибо большое, как ты объясняешь beckand с примером со стороны пользовательский ЭТО ВООБЩЕ БОМБА👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍

  • @yeson6581
    @yeson6581 Před 2 lety +1

    Классный пример! Всё стало понятно и очень логично! Спасибо!

  • @user-ow1he8qm2h
    @user-ow1he8qm2h Před 3 lety +2

    Все очень понятно и доступно. Спасибо за проделанную колоссальную работу по созданию обучающего курса) Я думаю, многим начинающим и не только разработчикам информация будет полезной

  • @woodscrock
    @woodscrock Před 3 lety

    Нормально зашло! Везде вокруг, да около, а тут, как обычно, очень понятно!

  • @pavellapshin4440
    @pavellapshin4440 Před 5 lety +2

    Спасибо огромное, прочитал книгу и пару статей, понял инкапсуляцию только благодаря вашему видео

  • @vitaliy9056
    @vitaliy9056 Před 6 lety +1

    Так классно объясняешь. Респект тебе!!!!!!!! Успехов!

  • @ThevideOoLoadeR
    @ThevideOoLoadeR Před 2 lety

    Очень крутые уроки. Иногда захожу на другие сайты, чтобы расширить кругозор по той или иной теме, но "костяк" инфы усваиваю здесь. Спасибо!

  • @Onneaanable
    @Onneaanable Před 6 lety +1

    Благодарю от души. Ясно и чётко всё объясняешь а главное аналогии понятные.
    С П А С И Б О !

  • @Annonymouseification
    @Annonymouseification Před rokem +1

    Подписался. Господи, после всяких "преподавателей" твои уроки это просто идеал преподавания! Вот так просто и своими словами объясняешь, я лишь повторяю в идее и все запоминается и понимается.

  • @germannikolishin2539
    @germannikolishin2539 Před 8 lety

    Спасибо большое! Отличные уроки!

  • @ivan-the-l
    @ivan-the-l Před 4 lety

    Супер уроки: кратко и понятно!

  • @korumstar9989
    @korumstar9989 Před 5 lety

    Спасибо за работу!

  • @asnpost
    @asnpost Před 7 lety

    Первый раз понял что такое сеттеры и геттеры. До этого смотрел и читал разное, но на живых примерах - впервые изложено для понимания, а не для "так надо". СПАСИБО!

  • @user-pu8yy8fu9q
    @user-pu8yy8fu9q Před 8 lety

    Отличный урок! Спасибо.

  • @didoctor2145
    @didoctor2145 Před 4 lety

    Молодец мужик, очень клево все объясняешь.

  • @TarikBat
    @TarikBat Před rokem

    Алишев, ты очень доходчиво рассказал!

  • @dant5550
    @dant5550 Před 5 lety +1

    Спасибо, по полочкам разложил!

  • @alexandrdenysenko6196
    @alexandrdenysenko6196 Před 3 lety +1

    Спасибо, очень много узнал по Вашим видео

  • @juliaarte1708
    @juliaarte1708 Před 3 lety +1

    Спасибо! Очень просто и понятно!

  • @Anatoli-bq1pe
    @Anatoli-bq1pe Před 2 lety

    Отличный урок) Благодарю!

  • @olegbulat2628
    @olegbulat2628 Před 5 lety

    Огромное спасибо! Просто и понятно.

  • @jlutepatop9342
    @jlutepatop9342 Před 4 měsíci

    Шикарная подача материалла! Браво!!! 10 из 10. Лучшего курса я пока еще не видел! Успехов тебе. И пожалуйста продолжай дальше записывать видео!🤝🤝🤝

  • @andrey6552
    @andrey6552 Před 2 lety

    Понятные и очень просто видео, спасибо большое! :)

  • @user-qu2nd5gh1k
    @user-qu2nd5gh1k Před 2 lety

    Ну хоть что-то начало доходить про геттер и сеттер. Спасибо огромное

  • @noname-to3ld
    @noname-to3ld Před 6 lety

    спасибо за доходчивое разъяснение

  • @user-ir4sx7fs3r
    @user-ir4sx7fs3r Před 3 lety +1

    Стараюсь конспектировать все твои уроки чтоб быстрее понять и запомнить. Про геттеры и сеттеры на ютубе пересмотрел около 10 видосов разных. Я так и не понял что это и зачем нужны. Тут я даже ничего не записывал, ибо это оказалось настолько простой и понятной вещью

  • @Devivl
    @Devivl Před rokem +1

    Почему так мало лайков? Такое ощущение, будто человек записывал видео, когда их ещё не существовало.
    Потрясающее объяснение 👍

  • @user-qw9uo4wo5p
    @user-qw9uo4wo5p Před 2 lety +1

    Благодарю! Очень полезно!

  • @TierStar1994
    @TierStar1994 Před 3 lety

    Спасибо, разобрался наконец)

  • @funenglish8128
    @funenglish8128 Před 4 lety +2

    Очень круто обьяснил. В твоих уроках есть то чего нету в других. Обьянение того зачем это нужно и где этоприменяется. Сделай еще плиз курс пет проэкты. Что делать? Как делать? Зачем? Что на них ты должен научится? Что обычно делают в компаниях? Что пишут регулярно? А что не так часто? Что нужно знать чтобы понять как решить ту или иную проблему если ты работаешь как джава разработчик на андроид или на ентерпрайз. Будет реально полезно. И если будешь делать проэкты объясни почему именно он? Чем он нам поможет для работы и т.д. Спасибо тебе. Учить это твое. Продолжай в том же духе и монетизируй

  • @ilyasamilyak6517
    @ilyasamilyak6517 Před 2 lety

    Очень круто подал информацию. Спасибо

  • @user-cs7yl8ol9l
    @user-cs7yl8ol9l Před 4 lety

    Просто лучший, очень полезно и классно, всем буду советовать канал и ваши книги

  • @user-sk8vp8lm9x
    @user-sk8vp8lm9x Před 3 lety +1

    Решил перейти на Java с JS. благодаря вам процесс дается гораздо проще)
    Спасибо вам большое!

    • @HaruaTop-kw8so
      @HaruaTop-kw8so Před rokem

      тоже с жс перешёл на джаву, неудобно , но прикольно

  • @HelloWorld-ps2kd
    @HelloWorld-ps2kd Před 7 lety +9

    Реально все четко. Спасибо. Буду дальше смотреть твои уроки

    • @HelloWorld-ps2kd
      @HelloWorld-ps2kd Před 7 lety +3

      и чуть не забыл - конечно же лайк. Жаль что два за раз не могу поставить)

  • @kartuzzkartuzz4222
    @kartuzzkartuzz4222 Před 4 lety +1

    крч, всем тем, кто уже пытался врубиться в джаву и не смог, но имеет сумбур знаний, вам на этот канал, очень хорошо мозги прочищает и расставляет всё по полочкам).

  • @elxanmcidli170r4
    @elxanmcidli170r4 Před 3 lety

    Спасибо за объяснение

  • @user-hu2ji2lw7v
    @user-hu2ji2lw7v Před 2 lety

    какая понятная джава) спасибо)

  • @ruslan1992100
    @ruslan1992100 Před 7 měsíci

    отличное обьяснение, все супер

  • @user-lm1rz8zf3n
    @user-lm1rz8zf3n Před rokem

    Страничка выглядит отлично,все очень хорошо,спасибо за анонс.Искал страничку для заработка и снова нашел,СПАСИБО

  • @justblog6027
    @justblog6027 Před 3 lety +1

    Спасибо за видео! Всё-таки, для меня, когда человек объясняет и показывает на примере лучше доходит. А то уже и в HeadFirst прочитал и в раше прошел, и так и не дошло)

  • @hatemachine710
    @hatemachine710 Před 3 lety

    Сапсибо alishev и кстати мог бы сразу про Refactor рассказать походу или Shift + F6

  • @alextagere8910
    @alextagere8910 Před 6 lety +2

    Так, в общем мне немного подсказали и таки получилось написать так, чтобы прога запрашивала и имя и возраст до тех пор, пока не будет адекватного ответа. Спасибо автору еще раз. Очень доходчиво излагаете!!! Если кому интересно, то код ниже:
    -------------------------------------------------
    import java.util.Scanner;
    public class Set_Get {
    public static void main(String[] args) {
    String name;
    int age;
    Scanner scan = new Scanner(System.in);
    Identification person = new Identification();
    while(!person.getIsNameCorrect()){
    System.out.println("Введите Ваше имя: ");
    name = scan.nextLine();
    person.setName(name);
    }
    while(!person.getIsAgeCorrect()){
    System.out.println("Введите Ваш возраст: ");
    age = scan.nextInt();
    person.setAge(age);
    }
    System.out.println("Вас зовут - " + person.getName() + ". Ваш возраст - " + person.getAge() + " лет. Вы можете войти!!!");
    }
    }
    class Identification{
    private String userName;
    private int userAge;
    private boolean isNameCorrect = false;
    private boolean isAgeCorrect = false;
    public void setName(String n){
    if (n.isEmpty()){
    System.out.println("Вы ввели пустое имя!!! Введите имя еще раз!!!");
    }
    else{
    userName = n;
    isNameCorrect = true;}
    }
    public String getName(){
    return userName;
    }
    public Boolean getIsNameCorrect(){
    return isNameCorrect;
    }
    public void setAge(int a){
    if (a

    • @Lemoonbird
      @Lemoonbird Před 5 lety +1

      Дописала к проверке на

  • @user-lx2ft9vv8r
    @user-lx2ft9vv8r Před 4 lety +4

    В данной теме, по факту, про инкапсуляцию ни слова не сказано)
    Кроме того что упоминается прайват.
    Инкапсуляция - сокрытие элементов путем изменения\добавления модифакторов доступа. Это более обширная тема, чем прописывание сеттеров и геттеров.
    В остальном, спасибо за видео)

    • @tobe2339
      @tobe2339 Před 4 lety

      согласен, ни о чем, если честно...

  • @xqz666
    @xqz666 Před 7 lety +2

    канал отличный

  • @andreiserov2816
    @andreiserov2816 Před rokem

    Спасибо большое за подробные уроки. Еще большой плюс в том, что произношение английских слов чистое, привыкаешь называть все правильно)

    • @user-fg7ri5vw8f
      @user-fg7ri5vw8f Před rokem

      Это да, но автор все время называет null как нУл, хотя правильно нАл.

    • @minage8492
      @minage8492 Před rokem

      @@user-fg7ri5vw8f ноал, а не нал

  • @user-nh3cq9it6e
    @user-nh3cq9it6e Před 6 lety +4

    Серьезно??? так все просто )) Спасибо огромное пожалуйста снимай ролики, ты распиаришься полюбому))

  • @user-gw7gl9bs8q
    @user-gw7gl9bs8q Před 4 lety

    Очень хорошо объясняете, речь поставлена) Приятно слушать) Спасибо

  • @vadosboss9674
    @vadosboss9674 Před 6 lety +1

    Ты молодец всё очень подробно до мельчайших деталей обьесняешь

  • @a.d.4418
    @a.d.4418 Před 4 lety +1

    Api это application programming interface пишу чтобы не путать начинающих, спасибо за видео

  • @alexb.2616
    @alexb.2616 Před 4 lety

    Спасибо!

  • @DMITRIYSHUL
    @DMITRIYSHUL Před 2 lety

    Вот ТЕПЕРЬ все стало понятно.

  • @annasi9668
    @annasi9668 Před 7 lety +1

    отлично

  • @user-mb4nc3np6t
    @user-mb4nc3np6t Před 4 lety +2

    я не могла понять раньше эти сет и гет потому что не понимала зачем по сто раз эти имена создавать. а теперь я понимаю что есть еще юзеры - поэтому мы должны быть в состоянии поменять внутри своей программы имена полей, НО что бы программа продолжала работать у других людей. что бы мои внутрение редакции не попортили работу программы у третьих лиц. .... если я верно поняла)

  • @rumataastorskiy5734
    @rumataastorskiy5734 Před 7 lety

    Спасибо! Все предельно понятно. Идеальная логика изложения. Молодец!

  • @user-tn7qd4gw1z
    @user-tn7qd4gw1z Před 7 lety +11

    Наконец-то, что-то стоящее! А то на всех каналах картавые умные дядьки объясняют, что хер поймёшь?
    Респект, чувак и уважуха тебе!!!

    • @alexkrul0
      @alexkrul0 Před 5 lety +4

      ну респект и уважуха понятно, но чувак ему зачем???

  • @lili773
    @lili773 Před 2 měsíci

    ммм... а я вот люблю задавать пустые имена, но возможностей все меньше и меньше. Спасибо за ваш курс!

  • @Varadorchik
    @Varadorchik Před 6 lety

    Большущее спасибо! :) каша ушла )))

  • @xaxage
    @xaxage Před 4 lety

    Спасибо

  • @alextagere8910
    @alextagere8910 Před 6 lety

    Автору как всегда респект!! А вопрос такой. Я тоже сделал вариант со сканнером, когда пользователь на запрос программы вводит имя и возраст. Так вот. Когда в методе сэттер идет проверка на пустое имя (так же как и на отрицательный возраст). Здесь, как-бы, нужно зациклить, пока пользователь не введет что-то адекватное, так?. А как это сделать, допереть не могу. Посоветуйте, пожалста!)))

  • @vladhrytsiv1068
    @vladhrytsiv1068 Před 5 lety

    Здравствуйте, а можно ли назвать инкапсуляцией то что мы делали на прошлом уроке? Мы же не обращались на прямую к переменным из метода main.

  • @alexmaliar3493
    @alexmaliar3493 Před 6 lety +1

    Большая благодарность за труды по обучению недоразвитых) Но, если перед записью ролика составить себе на бумажке план лекции, то изложение еще улучшится.

  • @michaeljug6717
    @michaeljug6717 Před 5 lety +1

    скажите пожалуйста чем отличается класс который мы создали в одном файле и класс на который мы выделяем отдельный файл

  • @DmitryTHP
    @DmitryTHP Před 8 lety

    Тоже учусь по этим видосам все доступно. Мелочей правда мало, Нет всех подробностей. Лучше иметь под рукой какой нибудь учебник дополнительно.В общем респект, не зря тратишь время.

    • @alishevN
      @alishevN  Před 8 lety +1

      +Дмитрий Дементьев Спасибо!

  • @ymamalynowruzow6357
    @ymamalynowruzow6357 Před 4 lety

    Вот это да вот это другое дело

  • @yurimob
    @yurimob Před 2 lety

    Спасибо за курс. Неплохо было бы дать определение "сеттера" и "геттера" и объяснить в каком они формате записываются, то есть почему пишется "setName", синтаксис. А то приходится догадываться интуитивно.

    • @user-go9qh9wb3h
      @user-go9qh9wb3h Před rokem +1

      set - назначить, get - получить, при минимальном знании английского это становится очевидно)

  • @user-ul5py9rx5s
    @user-ul5py9rx5s Před 7 lety

    В шарпе идеально сделаны геттеры и сеттеры

  • @aisylkin
    @aisylkin Před 7 lety

    в плейлисте канала видео в обратном порядке воспроизводится, как задать нужную последовательность?

  • @102koster
    @102koster Před 6 lety

    Неплохо было бы оставлять задачи на закрепление под видео

  • @dmitryvasilev8858
    @dmitryvasilev8858 Před 3 lety +4

    Почему не так:
    public void setName(String name){
    this.name = name;

  • @hikmatasgarli7036
    @hikmatasgarli7036 Před 5 lety +2

    // Основная идея инкапсуляции вы должны максимум ограничить свои поля от другиз классов

  • @1pavka
    @1pavka Před 2 lety

    Второй момент-зачем задавать значение полей, если есть ограничения на их вид. Можно же параметры все через метод передавать? И в методе они уже проверяются и возвращаются статусы

  • @user-yq5tm3yy2e
    @user-yq5tm3yy2e Před 8 dny

    Наиль, скажи, в твоем курсе по ссылке есть стримы? Я просто только лямбда выражения нашел!

  • @dwasssik_3333
    @dwasssik_3333 Před 7 měsíci +1

    Добрый день! Cкажите пожалуйста где можно попрактиковаться по этим темам?

  • @thegshow2296
    @thegshow2296 Před rokem +1

    Бро, вместо ручного переименовывания переменных в intelliJ есть команда "Refactor" в контекстном меню кликая на переменную. С её помощю переименовывается переменная во всем коде

    • @vik11111
      @vik11111 Před rokem +2

      Ну норм совет в ролик шестилетней давности. Некропостер

  • @nurkhabib8954
    @nurkhabib8954 Před 21 dnem

    Вопрос для самых одарённых:
    Как будет выглядеть проверка на ввод пустого значения с консоли для переменных значения типа int?
    2 часа думаю над этой казалось бы маленькой задачей.

  • @RomanRime
    @RomanRime Před 3 lety +1

    В названии видео есть слово "Инкапсуляция", но что это - так и не услышал. Только пару раз между делом в тексте прозвучало.
    Про сеттерны\геттерны тоже как-то расплывчито понятие в уроке, для меня, было. До этого 17 уроков всё ок.

    • @user-zq3tr7ny2o
      @user-zq3tr7ny2o Před rokem +1

      на шестндцатой минуте:
      "в этом основная идея инкапсуляции. вы должны максимально ограничивать свои поля от других классов, то есть ваши поля были видны только в пределах класса."
      всё, то делалось в этом видео и есть инкапсуляция.

  • @nurgul8971
    @nurgul8971 Před 7 lety +1

    где это можно применить?

  • @user-yo7zm2ph9b
    @user-yo7zm2ph9b Před 3 lety +1

    а что если в конструкторе при создании объекта указывать те же имя и возраст, получается проверку надо в конструкторе прописывать?
    это адекватный способ или как?)
    как проверять правильность введенных данных если по условию стоит установка данных через конструктор, или это бред?)

  • @sinushkin
    @sinushkin Před 3 lety

    Еще удобно помечать synchronized setName и speak для избежания коллизий. А вот на счет максимально инкапсулировать не согласен. На последнем месте работы зомбодебилы инкапсулировали у класса Point поля x y. Их спрашиваешь зачем почему. Тык мык мычат чего то вот таких видосов насмотрелись

  • @maksim3281
    @maksim3281 Před 4 lety

    А почему бы нам сразу не передвать значение в Гетер.
    Т.е, например, передаем имя в getName, в котором name = введеное имя. И после возвращаем назначеное имя

  • @xoxotoonvideos
    @xoxotoonvideos Před 3 lety

    Наиль, подскажите, пожалуйста, почему выводится не "вы ввели некорректный возраст", а 0 при вызове метода .getAge, то же самое с .getName, почему null, а не сообщение sout("вы ввели некорректное имя")?

    • @user-zq3tr7ny2o
      @user-zq3tr7ny2o Před rokem

      выводится. самой первой строчкой.
      а потом отрабатывают методы гетнейм и гетеэдж. там уже выводится значение переменных на данный момент.

  • @seranshum
    @seranshum Před 6 lety +1

    У меня idea сказала у класса Person указать параметр static. Хотя по предыдущему уроку не ругалась на отсутствие этого параметра. Странно, что для нее изменилось? public class GettersAndSetters {
    public static void main(String[] args) {
    Person person1 = new Person();
    person1.setName("Онуфрий");
    person1.setAge(100);
    person1.speak();
    }
    static class Person{
    private String name;
    private int age;
    public void setName(String userName) {
    if (userName.isEmpty()){
    System.out.println("Введено пустое значение.");
    }
    else
    {this.name = userName;}
    }
    public String getName(){
    return name;
    }
    public void setAge(int userAge) {
    if (userAge

    • @user-zq3tr7ny2o
      @user-zq3tr7ny2o Před rokem

      У тебя "main" и "class Person" находятся в одном классе, в классе "public class GettersAndSetters".
      Вынеси класс Person за пределы класса GettersAndSetters.

  • @syncosounds1908
    @syncosounds1908 Před 6 lety +44

    например ваш пользователь не совсем умный человек (с)
    ахахах

  • @user-rs6xc5qx7d
    @user-rs6xc5qx7d Před 4 lety

    А вдруг это не совсем умный пользователь вместо имени мат напишет, это нам в сеттере целую партянки проверок нужно писать. Да и возрос же не может быть 0 или 200 лет. Дела... Лайк как всегда, за урок спасибо.

    • @tobe2339
      @tobe2339 Před 4 lety

      "пользователь" вообще не будет трогать код или что-то там смотреть. Код будете юзать только ты, либо другой программист. Автор использует слово "пользователь", чтобы было хоть немного понятно, зачем нужны геттеры и сеттеры, для тех, кто никогда с этим не сталкивался.

  • @taraslozan5665
    @taraslozan5665 Před 7 lety

    Доброго времени суток, хотел спросить: а как убрать из консоли вывода null і 0, если проверка в сеттере прошла отрицательно?

    • @Lexoid65
      @Lexoid65 Před 7 lety

      Просто не выводить на экран с помощью метода System.out.println() значение полей age и name. Если проверка сеттера прошла отрицательно, то значение, которое задается в параметрах сеттера при вызове метода просто не будет присвоено полю объекта. 0 для переменной типа int и null для типа String всё равно останутся, так как это значения по умолчанию.

  • @sabinashaganova1258
    @sabinashaganova1258 Před 3 lety

    хотела спросить , а почему мы использовали слово public рядом методах в классе Person ? Ведь в предыдущих уроках эти методы были без этого слово public

    • @user-cx1yj8gn5p
      @user-cx1yj8gn5p Před 3 lety +1

      public для того чтобы можно было использовать и обращаться к данному метод в любой точке программы или пакета.

  • @user-el8pi1yp6q
    @user-el8pi1yp6q Před 4 lety

    Здравствуйте Большое спасибо за Вашу огромную работу А вот ведь в классе Person метод speak() использует переменные name и age Не через геттеры (не getName и не getAge) Я так понимаю внутри класса всегда к переменным обращаемся на прямую без сеттеров и геттеров За раннее спасибо

    • @alishevN
      @alishevN  Před 4 lety +1

      Да, геттеры/сеттеры как правило для обращения к полям извне класса

    • @user-el8pi1yp6q
      @user-el8pi1yp6q Před 4 lety

      @@alishevN Спасибо

  • @hayem9090
    @hayem9090 Před 5 lety +1

    Наконец хоть кто-то по английски правильно говорит!

  • @pegasovich
    @pegasovich Před 4 lety

    самые лучшие видео по Java! но я никак не пойму как "ПОЛЬЗОВАТЕЛЬ" сможет иметь доступ к какому либо классу и к коду вообще? :-)

    • @alishevN
      @alishevN  Před 4 lety +1

      Ну да, здесь слово пользователь не совсем подходящее.

    • @pegasovich
      @pegasovich Před 4 lety

      @@alishevN спасибо, разобрался! :) в любом случае - самая лучшая подача материала

  • @valentinkadushkin324
    @valentinkadushkin324 Před 5 lety

    Вопрос. Так можно-же просто в самом начале изменить с name на login без геттеров/сеттеров.
    Человек же это не будет видеть так-как он видит только main.
    зачем тогда все это нужно?

    • @gleb_bro8710
      @gleb_bro8710 Před 4 lety +1

      Допустим у тебя 100 классов, в каждом из которых есть вызов поля name, потом по какой-то причине(ошибка из-за конфликтов переменных и тп), тебе надо изменить name -> login. Ты будешь вручную это делать? Лучше уж воспользоваться сетторами и гетторами, и изменить несколько строчек кода, в которых используеться это поле.