Есть код:
public class Book {
public void main(String[] args){
Title title = new Title();
Author author = new Author();
Content content = new Content();
title.setTitle("Bible");
author.setAuthor("Jesus");
content.setConetnt("Holy shit");
title.show();
author.show();
content.show();
}
public class Title{
public String title;
public void setTitle (String title){
this.title = title;
}
public String getTitle (){
return title;
}
public void show (){
System.out.println(title);
}
}
public class Author{
public String author;
public void setAuthor (String author){
this.author = author;
}
public String getAuthor (){
return author;
}
public void show (){
System.out.println(author);
}
}
public class Content {
public String conetnt;
public void setConetnt (String conetnt){
this.conetnt = conetnt;
}
public String getConetnt() {
return conetnt;
}
public void show (){
System.out.println(conetnt);
}
}
}
Зачем здесь в методе set используется this?
Чтобы присвоить значение title из аргумента функции значению title класса. Почитай подробно про то, как работают сеттеры, классы и ООП в целом
this позволяет обращатся к членам класса. В твоем случае для того чтобы скрыть одноименный аргумент метода.
В левой части (this.title) - обращение к полю класса. В правой части (title) - обращение к локальной переменной из аргумента метода-сеттера.
Так как имена поля класса и локальной переменной совпадают, то используется служебное слово this для указания на поле класса.
Сама операция присваивает значение локальной переменной, (аргумент метода) полю класса.
PS: служебное слово this - ссылка на текущий экземпляр класса и запись this.title значит ссылку на глобальную переменную (поле класса) текущего класса с именем title (на локальные переменные таким способом ссылаться нельзя, так как они имеют меньшую область видимости, чем экземпляр класса)
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости