Помогите понять, как правильно применять инкапсуляцию!

Для справки: Я начал изучать Java с нуля. У меня возникли вопросы по моему пониманию инкапсуляции. Как пользоваться геттерами сеттерами и конструкторами, я знаю. А вот в таком случае я не знаю как правильно сделать. Пример:

public class Main {
    public static void main(String[] args) {
        Test test = new Test();
        test.ExecuteTestOne();
    }
}

class Test {
    public void ExecuteTestOne() {
        TestOne();
    }
    private void TestOne() {
        int a = 1;
        int b = 2;
        int result;
        result = a + b;
        System.out.println(result);
    }
}

Если для вызова метода я использую "ExecuteTestOne()", это можно считать инкапсуляцией данных?


Ответы (2 шт):

Автор решения: Barmaley

Строго говоря, private метод не является формой инкапсуляции. Но смысл в private методах все таки есть:

  1. приватный метод недоступен для любых внешних классов
  2. приватный метод невозможно перегрузить
→ Ссылка
Автор решения: Dmitriy Yasnobulkov

Инкапсуляция в своем опредлении имеет дуализм.

  1. Инкапсуляция это сокрытие данных. И в данном случае чисто технически это выполняется, имеется приватный метод скрытый от внешнего наблюдателя.
  2. Инкапсуляция это объединение данных и кода. Здесь этого по сути нет, так как класс не имеет полей.
→ Ссылка