![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 26.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam pytanie odnośnie określania typów parametrów w obiektach.
Przykład :
Mam pytanie odnośnie tej linijki bo nie wiem czy dobrze rozumiem. Do metody ship jako parametr można tylko dać metody z Klasy Percel, tak? A jak będę chciał się odwołać w metodzie ship do metody run() to wystarczy napisać $percel->run ? Bo nie wiem dlaczego tak jest to zapisane... Ten post edytował M4ver7071 16.10.2014, 22:22:36 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Chodzi tutaj o przekazywanie konkretnego typu obiektu. W tym przypadku zadziała tutaj wszystko co będzie typu Percel. Więc tak, przekazując nie metody, tak jak piszesz, a całą klasę Percel uzyskasz do nich dostęp.
Dodatkowo możesz zrobić coś takiego class Something extends Percel {} do ship przekazać tak naprawdę Something i to również zadziała, bo w ostateczności obiekt Something składa się z Percel ship(Percel $percel). Inny case: wykorzystanie interface interfeca MyInterface.... class Something implements MyInterface {} ship(MyInterface $obj) do ship możesz przekazać Something mimo, że w deklaracji funkcji zamieściłeś MyInterface a dlaczego? Dlatego, że spodziewasz się metod, które masz zadeklarowane w interfejsie |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 22:57 |