Введение в инкапсуляцию в PHP

В следующей статье «Инкапсуляция в PHP» дается подробное описание инкапсуляции PHP.

  • В прежние времена компьютерные программы представляли собой длинную последовательность команд. Затем команды были объединены в список команд, называемых функциями.
  • Все данные хранились в одном и том же месте, и они изменялись из любого места, где бы они ни вызывались, что вызывало множество проблем, поскольку данные, измененные в одной функции, также влияли на другие функции. Поэтому для преодоления этой проблемы ООП использует инкапсуляцию в PHP. Давайте посмотрим, что такое инкапсуляция.
  • Инкапсуляция является фундаментальной темой в языке объектно-ориентированного программирования (ООП). В нем изложена концепция связывания данных (атрибутов) и методов (функций) в единый блок (класс). Этот термин также называется скрытием информации.
  • Это достигается за счет конфиденциальности данных и методов класса. Это решает проблему на уровне реализации, а не на уровне проектирования.
  • Инкапсуляция специально используется для защиты. Это процесс сокрытия данных объекта от других классов / методов, и доступ к данным запрещен членам класса.
  • Если у вас есть атрибут, который другие не видят, и вы связываете его с функциями или методами, которые обеспечивают весь доступ к элементам данных, вы можете скрыть содержимое и контролировать доступ к объекту.
  • Пользователи не будут знать о внутренней реализации и узнают только верхний или верхний вид функциональности о том, как класс хранит данные в переменных. Функции объекта могут получать доступ к функциям других объектов.
  • В нашей повседневной жизни инкапсуляция подобна нашему гардеробу, в котором мы можем хранить наши рубашки, брюки и т. Д. В этом случае гардероб будет основным классом, а атрибутами будут одежда, коробки и т. Д.

Как работает инкапсуляция в PHP?

  • Как мы все знаем, инкапсуляция используется, чтобы скрыть детали от пользователей. Чтобы достичь этого, мы создаем объект класса, и объект вызывает методы и методы, выполняющие свою задачу с определенными свойствами.
  • Давайте рассмотрим пример производителя кондиционеров и кондиционеров.
    Предположим, что вы являетесь производителем кондиционера, и вы разработали и интегрировали конструкцию (класс) кондиционера, теперь, используя свое оборудование, вы производите кондиционер (объект) для целей продажи, когда вы продаете кондиционер, о котором пользователь должен знать. как использовать кондиционер вместо того, как он работает ИЛИ давайте предположим, что у вас есть ноутбук и есть интерфейс для взаимодействия с ним, вы будете пользоваться услугами ноутбука, а не знать, как он на самом деле работает.
  • Это означает, что вы создаете класс с функциями и, создавая объекты класса, вы делаете доступными функциональные возможности вашего класса этим объектом и без вмешательства в исходный класс.
  • Инкапсуляция - это то, как вы хотели, чтобы ваши объекты или переменные были видны в вашем реализованном коде.

пример

class employee ( public $name; private $id; protected $tax; public $age; )

Если вам нужен доступ к закрытым / защищенным свойствам, вы можете использовать методы getter и setter в своем классе.

Как следует из названия,

  1. Метод getter извлекает атрибут в других классах.
  2. Метод setter изменяет / изменяет значение атрибута / данных.
  • В зависимости от методов, которые мы реализуем, мы можем решить, какие разрешения должны быть предоставлены. Мы можем предоставить только для чтения, только для записи, полные разрешения или вообще никаких разрешений. Для достижения этого мы используем спецификаторы доступа, такие как public, private и protected.
  • Вы можете использовать открытое свойство в любом месте внутри класса, а также вне класса, но вы не можете использовать закрытые и защищенные свойства вне класса, вызывая его. Частные методы могут быть доступны в пределах одного и того же класса, а защищенные методы могут быть доступны только подклассам. Снаружи класс не может получить доступ к закрытому или защищенному методу других классов.
  • Используя методы getter и setter, вы также можете обращаться к переменным и методам вне класса. Взгляните на класс сотрудников, в классе добавьте следующий метод

class employee( public function employee_ID()( return $this->id; ))

И мы можем получить доступ, вызвав функцию, как это

$obj = new employee(); echo $obj->employeeID()

Пример инкапсуляции в PHP

Реализованный код



Encapsulation in PHP

class Employee
(
public $employee_name;
public $employee_id;
function __construct($emp_name, $emp_id)
(
$this->employee_name = $emp_name;
$this->employee_id = $emp_id;
)
public function Employee_details()
(
echo "Employee name is $this->employee_name and Employee id is $this->employee_id";
)
)
$obj = new Employee("Abhishek", "123456");
echo $obj->Employee_details();
?>
<_?php


Encapsulation in PHP

class Employee
(
public $employee_name;
public $employee_id;
function __construct($emp_name, $emp_id)
(
$this->employee_name = $emp_name;
$this->employee_id = $emp_id;
)
public function Employee_details()
(
echo "Employee name is $this->employee_name and Employee id is $this->employee_id";
)
)
$obj = new Employee("Abhishek", "123456");
echo $obj->Employee_details();
?>

Выход

Преимущества инкапсуляции в PHP

  • Инкапсуляция помогает нам связывать данные (переменные / атрибуты) и функции-члены класса.
  • Поля класса могут быть сделаны только для чтения или только для записи с использованием таких спецификаторов доступа, как public, private и protected.
  • Он обеспечивает ваш код большей безопасностью, гибкостью и простотой обслуживания.
  • Используя Encapsulation, ваши методы и атрибуты данных не могут быть вызваны напрямую, следовательно, нет незаконного доступа к данным со стороны пользователей.
  • Это позволяет нам модифицировать реализованный код, не нарушая логику / код других, которые используют тот же код и функции.
  • Это обеспечивает целостность данных объекта.
  • Пользователь класса не знает, как класс хранит данные.
  • Инкапсуляция предотвращает неожиданные изменения в данных.
  • Инкапсуляция также улучшает возможность повторного использования, и ее легко изменить в соответствии с новыми требованиями или потребностями.

Вывод

В этой статье мы узнали одну из самых важных концепций объектно-ориентированного программирования. Инкапсуляция является одним из самых известных и часто используемых методов для преодоления функций и методов, которые вызываются в нескольких местах.

Важность инкапсуляции заключается в том, чтобы скрыть сложный код от пользователя и показать пользователю реальную функциональность. Если в коде не соблюдается правильная инкапсуляция, это ведет к его плохому проектированию. Таким образом, это отражается тем фактом, что большинство современных языков программирования поддерживают инкапсуляцию, такую ​​как PHP, JAVA и т. Д.

Рекомендуемые статьи

Это руководство по инкапсуляции в PHP. Здесь мы обсуждаем введение, работу, примеры и преимущества инкапсуляции в PHP. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Что такое PHP?
  2. PHP фреймворки
  3. Строковые функции PHP
  4. Как подключить базу данных к PHP?
  5. Примеры инкапсуляции в C ++
  6. Примеры инкапсуляции в C
  7. Преимущества инкапсуляции в JavaScript