Соглашение о языке Java; геттеры / сеттеры - PullRequest
2 голосов
/ 19 мая 2010
Public class Example {

    private int number;

    public Example(int number){
        this.number = number;
    }

    public int getNumber(){
        return number;
    }

    public void setNumber(int number){
        this.number = number;
    }

    public static void main(String[] args){
        Example e = new Example(5);

Что предпочитается при доступе к переменной внутри ее собственного класса; "e.number" или "e.getNumber ()"?

Редактировать
Я думаю, что самый важный вопрос: знает ли компилятор, что метод, который вы вызываете - это метод получения или установки. Итак, e.setNumber(5); будет так же быстро, как e.number = 5;

Ответы [ 12 ]

0 голосов
/ 19 мая 2010

число, если оно используется в том же классе. И e.getnumber в любых подклассах или в любом месте за пределами

0 голосов
/ 19 мая 2010

номер

Кроме числа является частным членом базового класса. Затем я использую метод получения / установки, чтобы понять, что он не является членом расширяющегося класса.

Редактировать: О, вы не собираетесь использовать его в главной функции внутри класса? Тогда ofc e.getNumber (), как сказал другой парень.

...