![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 163 Pomógł: 0 Dołączył: 10.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
jeszcze mało miałem do czynienia z obiektami i mam problem jak zrobić dziedziczenie
załóżmy że mam 2 klasy: uczeń i nauczyciel w każdej z tych klas będzie zmienna (tablica), konstruktor no i funkcje no i funkcje (pobierz_dane, dodaj, usuń, zmień) jak chciałbym zrobić klasę podstawową np. osoba a uczeń i nauczyciel jako dziedziczące to w w osoba byłyby funkcje a w uczeń i nauczyciel dziedziczyłyby te funkcje no i miały swoje konstruktory, oraz swoje tablice na dane) no i problem jest z klasą osoba, nie bardzo wiem jak ją utworzyć część klas bez dziedziczenia
głównie problem jest w tym że: 1. mam wywołania new Nauczyciel i new Uczeń, jak to zrobić w klasie ogólnej 2. w obu klasach są zmienne $zUczenTab = array ... i $zNauczycielTab = array ... (mają różne komórki) a czy da się zrobić tak sprawnie żeby odziedziczone funkcje działały na tych zmiennych (bez przekazywania parametrów do funkcji) ogólnie rzecz biorąc zastanawiam się jak zrobić klasę rodzica - Osoba na podstawie wyżej podanych fragmentów klas, żeby mogły po niej dziedziczyć pewnie to wszystko zamotałem, ale może ktoś z Was pomoże mi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() |
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 163 Pomógł: 0 Dołączył: 10.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wyzwól swój umysł z okowów strukturalnych błędów. małymi krokami, ale się staram (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) new __CLASS__($zDane); //__CLASS__ pobierze nazwe klasy no tak, tyle że zwraca mi nazwę klasy rodzica - osoba a mi jest potrzebna nazwa klasy która dziedziczy tę funkcję czyli uczeń lub nauczyciel. Znalazłem get_class() ale, ona używa $this a ja nie mogę używać $this bo funkcja |
|
|
![]() ![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 5 Dołączył: 20.03.2007 Skąd: Kraków Ostrzeżenie: (30%) ![]() ![]() |
no tak, tyle że zwraca mi nazwę klasy rodzica - osoba a mi jest potrzebna nazwa klasy która dziedziczy tę funkcję czyli uczeń lub nauczyciel. Znalazłem get_class() ale, ona używa $this a ja nie mogę używać $this bo funkcja Hmm, statyczna? To to jest jakiś singleton, ktory zwraca jakąś tablice obiektow swojego typu? Nie wyglada mi to najlepiej. Odradzam stsosowania tu statycznych metod. Moze wytlumacz jasniej co ta funkcja PobierzDane ma robic? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 11:22 |