Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: interface

Сообщения:  [1-10]   [11-12] 

 
 автор: cheops   (15.05.2007 в 21:56)   письмо автору
 
   для: localGhost   (13.05.2007 в 09:58)
 

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

   
 
 автор: XPraptor   (15.05.2007 в 18:55)   письмо автору
 
   для: Ant88   (15.05.2007 в 15:40)
 

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

   
 
 автор: Ant88   (15.05.2007 в 15:40)   письмо автору
 
   для: mefestofel   (15.05.2007 в 14:22)
 

Если они по своему статусу аналогичны жабным, то наверное в этом и заключается их единственное предназначение. :)

   
 
 автор: mefestofel   (15.05.2007 в 14:22)   письмо автору
 
   для: mefestofel   (15.05.2007 в 14:20)
 

С помощью интерфейсов можно решить проблему отсутствия множественного наследования в php.

   
 
 автор: mefestofel   (15.05.2007 в 14:20)   письмо автору
 
   для: mefestofel   (15.05.2007 в 14:14)
 

Интерфейсы подключаются "служебным словом" - implements, после обьявления имени класса (это на кухонном языке ;-), чтобы было понятно),
например:

// интерфейс
interface printable
    { 
     function PrintThisText(); 
    } 

class Myclass implements printable 
  { 
     function PrintThisText(); 
       { 
       // реализация - код
       } 

   
 
 автор: mefestofel   (15.05.2007 в 14:14)   письмо автору
 
   для: mefestofel   (15.05.2007 в 14:12)
 

В PHP5 есть поддержка интерфейсов ...

   
 
 автор: mefestofel   (15.05.2007 в 14:12)   письмо автору
 
   для: mefestofel   (15.05.2007 в 14:09)
 

это "определение" отражает мысл интерфейсов в рамках ООП.

   
 
 автор: mefestofel   (15.05.2007 в 14:09)   письмо автору
 
   для: Ant88   (15.05.2007 в 13:50)
 

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

   
 
 автор: Ant88   (15.05.2007 в 13:50)   письмо автору
 
   для: localGhost   (14.05.2007 в 08:38)
 

Интерфейсы, если так можно выразиться - схема класса, который не содержит определение методов и переменных но не содержит никакой реализации. Типа абстрактного класса. А что, разве в ПХП есть интерфейсы? Я раньше думал что это Java's know-how... Что-то я проспал, наверное :)

   
 
 автор: localGhost   (14.05.2007 в 08:38)   письмо автору
 
   для: Artem S.   (14.05.2007 в 08:19)
 

т.е. это просто описание методов для более удобного использования, которое никак не влияет на функционал класса? правильно понял?

   

Сообщения:  [1-10]   [11-12] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования