Как воспользоваться ф-цией из параллельного класса?

ayrat9

Новичок
to Simm
----------

Спасибо конечно, но в конце концов я вчера сам понял, что нельзя. Но мне нужны были эти переменные именно ДО создания объекта (вроде бы мой вопрос ясно указывает на это).

to _RVK_
-----------
Пришлось в скрипте, который использует классы создавать 2 объекта, и свойство одного объекта передавать в качестве параметра методу второго объекта. (надеюсь понятно выразился :) )
 

_RVK_

Новичок
надеюсь понятно выразился
Лучше бы код показал.
Я так понял чечь шла о методе а не о функции. Потом ты передал не свойство а значение свойства. И у класса/объекта нет переменных и функций, к него есть методы и свойства. Учись правильно формулировать мысли.

И если тебе нужно лишь значение свойства другого объекта, то передавать его в качестве параметра правильное решение, не пойму зачем было городить огород.

-~{}~ 12.01.05 13:43:

Еще лучше передавать ссылку на объект другого класса, и потом уже использовать любые методы и свойства.
 

SiMM

Новичок
Автор оригинала: ayrat9
Но мне нужны были эти переменные именно ДО создания объекта (вроде бы мой вопрос ясно указывает на это).
Твой вопрос вообще непонятно о чём. Человек, знакомый хоть немного с ООП, задать его не мог, поскольку это азы. Да и разве не логично то, что у несуществующего объекта никаких свойств быть не может?
 

IntenT

SkyDiver
SiMM
Статические свойства - значение доступно без создания экземпляра класса.
 

Screjet

Новичок
Cтатические методы = в пределе понимания, а вот статические свойства ..(имхо, за пределами логики)

Посылай в фак с объяснениями :)
 

_RVK_

Новичок
Cтатические методы = в пределе понимания, а вот статические свойства ..(имхо, за пределами логики)
Почему? В пхп5 есть как статичемкие методы так и свойства. Есть примеры на деталях.
 

SiMM

Новичок
Автор оригинала: IntenT
Статические свойства - значение доступно без создания экземпляра класса.
Не знал, что в пятом они есть. Надо наверно как нибудь почитать про 5й хотя бы для общего развития. И потом - статические свойства - это уже действительно скорее свойства класса, а не отдельновзятого объекта.
 

_RVK_

Новичок
Могу пример.
PHP:
class foo {

    static $foo_var = 'I is static varible';

}

print foo::$foo_var;
вот тут краткий обзор новых возможностей (хотя думаю ты читал, просто не заметил).
 

ayrat9

Новичок
to _RVK_
--------

Цитата: "И у класса/объекта нет переменных и функций, к него есть методы и свойства."

Лаура Томпсон и Люк Веллинг "Разработка веб-приложений на основе РНР и MySQL" Стр.140 абзац 2


Цитата: "Еще лучше передавать ссылку на объект другого класса, и потом уже использовать любые методы и свойства."

А чем именно лучше? В чем его преимущества по сравнению с моим решением?


А в РНР4 статических свойств нет?
 

SiMM

Новичок
Автор оригинала: ayrat9
А в книге Лауры Томпсон и Люка Веллинга "Разработка веб-приложений на основе РНР и MySQL" сказано, что у объекта есть атрибуты и операции (к которым между прочим относятся и свойства, и переменные, и методы, и функции, и действия имеющие отношение к объекту.) Стр.140 абзац 2
Объектно-ориентированное программное обеспечение разрабатывается и создается в виде набора самостоятельных объектов, имеющих атрибуты и операции, которые взаимодействуют с целью удовлетворения определенных нужд. Под атрибутами понимают свойства или переменные, имеющие отношение к объекту. Под операциями понимают методы, действия или функции, которые объект может выполнять для изменения самого себя или какого-либо внешнего объекта.
Выделенное - исключительно для того, чтобы человеку, далёкому от программинга и впервые услышавшему слова "свойство" и "метод" было понятно, что это значит. И вообще, имхо, это плохой перевод - жаль, что в литературе по программингу нет своего Гоблина ;)
 

_RVK_

Новичок
А чем именно лучше? В чем его преимущества по сравнению с моим решением?
Ну лучше не лучше это все же зависит от задачи. Я твоей задачи так до сих пор и не знаю.
Лично я вижу приемущества в следующем:
Пусть у нас класс А использует свойства класса В.
1. Ты не делаешь копии данных из А в В.
2. Тебе доступны все свойства и методы класса В в классе А.
3. Изменения значений свойств класса В отражаются так же и на классе А

На счет терминологии. Можно конечно сказать "переменная класса" и "функция класса", но в ООП принято говорить свойство и метод а вместе они члены класса. Так грамотнее.
 
Сверху