Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Инкапсуляция Java

Инкапсуляция Java

В этом руководстве вы узнаете об инкапсуляции и сокрытии данных в Java с помощью примеров.

Инкапсуляция Java

Инкапсуляция — одна из ключевых особенностей объектно-ориентированного программирования. Под инкапсуляцией понимается объединение полей и методов внутри одного класса.

Он предотвращает доступ внешних классов к полям и методам класса и их изменение. Это также помогает добиться скрытия данных. .

<час>

Пример 1. Инкапсуляция Java

class Area {

  // fields to calculate area
  int length;
  int breadth;

  // constructor to initialize values
  Area(int length, int breadth) {
    this.length = length;
    this.breadth = breadth;
  }

  // method to calculate area
  public void getArea() {
    int area = length * breadth;
    System.out.println("Area: " + area);
  }
}

class Main {
  public static void main(String[] args) {

    // create object of Area
    // pass value of length and breadth
    Area rectangle = new Area(5, 6);
    rectangle.getArea();
  }
}

Вывод

Area: 30

В приведенном выше примере мы создали класс с именем Area. . Основная цель этого класса — вычислить площадь.

Для вычисления площади нам нужны две переменные:length и ширина и метод:getArea() . Поэтому мы объединили эти поля и методы в одном классе.

Здесь к полям и методам можно получить доступ и из других классов. Следовательно, это не сокрытие данных. .

Это всего лишь инкапсуляция . Мы просто храним похожие коды вместе.

Примечание :Люди часто считают инкапсуляцию сокрытием данных, но это не совсем так.

Инкапсуляция относится к объединению связанных полей и методов вместе. Это можно использовать для скрытия данных. Инкапсуляция сама по себе не является сокрытием данных.

<час>

Почему инкапсуляция?

<час>

Скрытие данных

Сокрытие данных — это способ ограничения доступа к нашим элементам данных путем сокрытия деталей реализации. Инкапсуляция также позволяет скрывать данные.

Мы можем использовать модификаторы доступа для скрытия данных. Например,

Пример 2. Сокрытие данных с помощью спецификатора private

class Person {

  // private field
  private int age;

  // getter method
  public int getAge() {
    return age;
  }

  // setter method
  public void setAge(int age) {
    this.age = age;
  }
}

class Main {
  public static void main(String[] args) {

    // create an object of Person
    Person p1 = new Person();

    // change age using setter
    p1.setAge(24);

    // access age using getter
    System.out.println("My age is " + p1.getAge());
  }
}

Вывод

My age is 24

В приведенном выше примере у нас есть private поле возраст . Так как это private , к нему нельзя получить доступ извне класса.

Чтобы получить доступ к age , мы использовали public методы:getAge() и setAge() . Эти методы называются методами получения и установки.

Создание возраста private позволил нам ограничить несанкционированный доступ из-за пределов класса. Это скрытие данных .

Если мы попытаемся получить доступ к age поле из Главного class, мы получим ошибку.

// error: age has private access in Person
p1.age = 24;

java

  1. Типы данных Java (примитивные)
  2. Операторы Java
  3. Java-комментарии
  4. Java для каждого цикла
  5. Java-строки
  6. Java это ключевое слово
  7. Java-интерфейс
  8. Java-проба с ресурсами
  9. Java-аннотации
  10. Приведение типов Java