(Я знаю, що я спізнююсь, але так, що я є підлим боєм, якого ти мене ніколи не бачив)
Це ключове слово в більшості об'єктно - орієнтованих мов програмування , якщо не всі кошти , що його посилання до поточного екземпляру об'єкта цього класу. Це по суті те саме, що викликати цей об'єкт поза методом по імені. Це, мабуть, не мало сенсу настільки ретельно:
Поза межами класу, щоб викликати щось у цьому екземплярі об'єкта, наприклад, сказати, що у вас є об'єкт, який називається об'єктом, і ви хочете отримати поле, яке вам потрібно буде використовувати
object.field
Скажімо, наприклад, ви намагаєтеся отримати доступ до object.field зсередини свого класу, наприклад, ваш конструктор, наприклад, ви можете використовувати
this.field
Це ключове слово , по суті замінює ім'я об'єкта ключове слово , коли який викликається всередині класу. Зазвичай це не так багато причин робити це поза, якщо у вас є дві однойменні змінні, одна з яких є полем класу, а інша є просто змінною всередині методу, це допомагає розшифрувати між ними . Наприклад, якщо у вас є це: (Га, зрозумій? Це ? Хе-хе .... просто я? Гаразд :( я покину зараз)
public String Name;
//Constructor for {object} class
public object(String Name){
Name = Name;
}
Це призведе до певних проблем, компілятор не зможе знати різницю між змінною Name, визначеною в параметрах для конструктора, та змінною Name всередині оголошення класу поля, тому він замість цього призначить параметр Name .. .. значення параметра Name, який нічого корисного і буквально не має мети. Це поширене питання, яке робить більшість нових програм, і я також став жертвою. У будь-якому випадку правильним способом визначення цього параметра було б використання:
public String Name;
//Constructor for {object} class
public object(String Name){
this.Name = Name;
}
Таким чином, компілятор знає, що змінна Name, яку ви намагаєтеся призначити, є частиною класу, а не частиною методу, і призначає її правильно, тобто означає, що вона призначає поле Ім'я тому, що ви вкладаєте в конструктор.
Підсумовуючи це, воно по суті посилається на поле об'єктного примірника класу, над яким ви працюєте, отже, це ключове слово "цей", що означає його цей об'єкт або цей екземпляр. Це хороша практика використовувати це під час виклику поля вашого класу, а не просто використовувати ім'я, щоб уникнути можливих помилок, які важко знайти, оскільки компілятор працює над ними.