[24-11-2009] Джо

Объектно-ориентированное программирование ( ООП ) - основные понятия

Объектно-ориентированное программирование ( ООП ) - технология программирования, связанная с использованием объектов - особого типа данных, содержащего собственно разнородные данные ( "свойства" ) и процедуры их обработки ( "методы" ).

Основные идеи ООП:

инкапсуляция - скрытие свойств и методов объекта от внешних процедур. Внешним процедурам доступны только свойства и методы, объявленные public;

наследование - объекты могут наследовать от других объектов методы и свойства. Производный объект наследует от базового методы и свойства в том случае, если они не переопределены в производном классе;

полиморфизм - расширение наследования - переопределение в 2х или нескольких производных от одного базового объектах одних и тех же методов;

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

В php5 объект - class.

Пример класса в php5

class Example {

private $pr1;

protected $pr2;

public $pr3;

var $pr4;

private function met1(){

echo("метод 1");

}

protected function met2(){

echo("метод 2");

}

public function met3(){

echo("метод 3");

}

function met4(){

echo("метод 4");

}

function __construct(){

echo("конструктор");

}

function __destruct(){

echo("деструктор");

}

}

Уровни доступа свойств и методов класса в php5

Свойства и методы классов имеют 3 уровня доступа:

  • private - доступ к методам и свойствам, объявленным private, только внутри класса, в котором они объявлены;
  • protected - доступ к методам и свойствам, объявленным protected, только внутри класса, в котором они объявлены и в производных от него классах;
  • public - полный доступ к методам и свойствам, объявленным public, методам по умолчанию, и к свойствам, объявленным var ( не рекомендуется ).

В примере уровень доступа public имеют свойства $pr3, $pr4 и методы met3, met4.

Конструктор и деструктор. Создание и уничтожение экземпляров классов в php5

Конструктор - __construct и деструктор __destruct запускаются неявно при создании и уничтожении экземпляров классов.

Создается экземпляр класса так:

Ex1 = new Example(); //выполняется __construct()

уничтожить экземпляр класса можно обычным способом:

unset(Ex1); // выполняется __destruct()

Eeey [ 1 ]
Так народ ктонибуть скажите где научтся создавать свои сайты,дайте ктонибуть ссылку на сайт де сразу учися делать сайт ну там я чото слышал про ПХП,
И чо это такое?
Кароче дайте ссылку де моно научится создавать сайты плиз народ выручайте!!!
Joe [ 2 ]
Могу предложить 2 варианта - http://webmaster.sbridge.ru и http://yandex.ru )
CyberTech [ 3 ]
Такие наивные, хотят все и сразу )))

PS. Огромная благодарность адину за довольно хорошо описанные метод поиска по базе данных и вывода инфы. Очень помогло в создании "Поиска" для моего сайта. Хотя правда есть некоторые неувязки (котрые пока еще не могу понятьк ак решить), но все же начало положено )) Главное, что ищет там, где надо и находит то, что нужно )))
Joe [ 4 ]
Пожалуйста! На вопросы отвечаю, на несложные - абсолютно безвозмездно, то есть даром ;-)
sancho2804 [ 5 ]
Так это тоже самое что и С++??
Joe [ 6 ]
принципы одинаковы, реализация разная )

* - обязательно заполнить

Комментарий

*Имя

E-mail

*Код: 

*Текст комментария:

Самые популярные статьи