|
6 / 10 / 0
Регистрация: 29.06.2018
Сообщений: 60
|
||||||
Слово this - для чего оно?17.07.2018, 09:54. Показов 4307. Ответов 72
Метки нет (Все метки)
Читал, что слово this используется в первую очередь для устранения конфликта локальных и глобальных переменных.
Пример кода:
1-й вопрос: переменная this.var1 - это глобальная переменная или локальная (параметр конструктора)? Иными словами, переменная с приставкой this - это переменная, объявленная выше (сначала), или же та переменная, что в скобках у конструктора? 2-й вопрос: разъясните, пожалуйста, применение this вот в таких конструкциях: this(b, c) - где такое используется и зачем? 3-й вопрос: какие есть ещё применения слова this в Java?
0
|
||||||
| 17.07.2018, 09:54 | |
|
Ответы с готовыми решениями:
72
Что такое событие, для чего оно нужно OpenVZ, VMware® ESXi 64-bit - для чего оно нужно? Для чего предназначено бинарное дерево, что оно делает? |
|
2757 / 2064 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
|
|
| 25.07.2018, 12:04 | |
|
0
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
|||
| 25.07.2018, 12:26 | |||
|
Добавлено через 4 минуты
0
|
|||
|
2757 / 2064 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
|
|
| 25.07.2018, 12:34 | |
|
0
|
|
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
||
| 25.07.2018, 12:38 | ||
0
|
||
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
|
| 25.07.2018, 12:42 | |
|
0
|
|
|
2757 / 2064 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
|
|
| 25.07.2018, 12:49 | |
|
0
|
|
|
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
|
|
| 25.07.2018, 12:50 | |
|
Причем тут конструктор?
Конструктор, по факту, это тоже метод. Только несколько спецефический. Но в целом подчиняется тем же законам. Если в методе есть переменная с таким же именем, что и поле класса. Неважно, обьявленная внутри метода или переданная извне. То при обращении по данному имени она перекрывает поле класса. И вы работаете с ней. Чтобы обратится именно к полю, вы обязаны дописать this. Что говорит компилятору, что идет обращение к полю, а не к переменной. Если же имя поля уникально, и пременной с таким именем нет, то хотите пишите, хотите нетпишите this - ваше дело.
0
|
|
| 25.07.2018, 12:50 | |
|
Не по теме: я думаю он вас тупо тролит
0
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
||||
| 25.07.2018, 13:04 | ||||
|
Добавлено через 1 минуту
0
|
||||
|
2757 / 2064 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
|
|
| 25.07.2018, 13:04 | |
|
0
|
|
|
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
|
|
| 25.07.2018, 13:06 | |
|
А я вам и ответил. Это не так.
This употребляется в любом методе внутри класса, если нужно обратится к полю, а внутри метода есть переменная с таким же именем. Добавлено через 46 секунд Конструкторы, сеттеры, геттеры тут не при чем!
0
|
|
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
|
|
| 25.07.2018, 15:22 | |
|
Vladimir1982, настоятельно рекомендую ещё раз внимательно перечитать всё, что Вам ответили, и действительно попробовать написать тренировочный класс с парой - тройкой конструкторов и методов. Если всё равно останутся вопросы, выкладывайте код своего учебного класса, указывайте непонятные моменты.
0
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
|||
| 25.07.2018, 16:01 | |||
|
Добавлено через 3 минуты выше приведенном примере
0
|
|||
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 25.07.2018, 16:02 | |
0
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
||
| 25.07.2018, 17:21 | ||
|
Добавлено через 31 минуту
Alexjun, только сейчас заметил, переменные то разные
0
|
||
|
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
|
|
| 26.07.2018, 08:34 | |
|
0
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
|
| 26.07.2018, 10:06 | |
|
0
|
|
|
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
|
|
| 26.07.2018, 10:32 | |
|
Уберите this отсюда, и вот вам пример
1
|
|
|
68 / 18 / 0
Регистрация: 26.01.2018
Сообщений: 166
|
|
| 26.07.2018, 11:42 | |
|
0
|
|
|
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
|
|||||||
| 26.07.2018, 11:57 | |||||||
|
Еще раз повторю для закрепления. ))) Когда речь идет о полях, а не о конструкторе this(), то: 1. В случае обращения к полю внутри класса, вы всегда можете использовать this - this.myName Можете, но не всегда обязаны. 2. В случае, если в любом методе (включая любой конструктор) используется переменная совпадающая по имени с полем класса, для доступа к полю вы обязаны использовать слово this.
1
|
|||||||
| 26.07.2018, 11:57 | |
|
Помогаю со студенческими работами здесь
40
Swapfile.sys Что это такое и для чего оно? Правильно ли составлено выражение, и для чего оно нужно в данном коде? Для чего необходимо распределять память при помощи new и как оно работает Подскажите что такое md5 шифрование пароля и для чего оно надо ? Строка содержит одно слово. Проверить, будет ли оно читаться одинаково справа налево и слева направо (т.е. является ли оно палиндромом) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|