#java #конструктор
В конструкторе, предназначенном для присвоения значений переменным класса при создании объекта, иногда использую this., иногда не используют. Я проверил - оба варианта работают, является ли один из них предпочтительным? public class Vehicle { private String color; Vehicle(String c) { color = c; } } public class Vehicle { private String color; Vehicle(String c) { this.color = c; } }
Ответы
Ответ 1
Необязательно, но позволяет не изобретать имена аргументам конструктора: public class Vehicle { private String color; Vehicle(String color) { this.color = color; } }Ответ 2
Предпочтительно и, в принципе, по другому и не получится в случае, если имя аргумента совпадает с именем поля класса: public class Vehicle { private Color color; Vehicle(Color color) { this.color = color; } } В случаях, когда имя параметра отличается от имени поля, которому будет присваиваться значение - слово this необязательно. Оно и так будет подразумеваться.
Комментариев нет:
Отправить комментарий