Programowanie obiektowe to paradygmat programowania wykorzystujący „obiekty”: struktury danych składające się z pól danych i metod wraz z ich interakcjami.
Jaka jest różnica między metodą klasy a metodą instancji? Czy metody instancji są akcesorami (modułami pobierającymi i ustawiającymi), podczas gdy metody klasowe to właściwie wszystko inne?
Dlaczego C # został zaprojektowany w ten sposób? Jak rozumiem, interfejs opisuje tylko zachowanie i służy opisaniu zobowiązania umownego dla klas wdrażających interfejs, że określone zachowanie jest realizowane. Jeśli klasy chcą zaimplementować to zachowanie we wspólnej metodzie, dlaczego nie powinny? Oto przykład tego, co mam na myśli: // These items …
Aby być konkretnym, próbowałem tego kodu: package hello; public class Hello { Clock clock = new Clock(); public static void main(String args[]) { clock.sayTime(); } } Ale dał błąd Nie można uzyskać dostępu do pola niestatycznego w metodzie statycznej main Zmieniłem więc deklarację clockna: static Clock clock = new Clock(); …
To pytanie zostało już zadane w kontekście C # / .Net . Teraz chciałbym poznać różnice między strukturą a klasą w C ++. Omów różnice techniczne, a także powody wyboru jednego lub drugiego projektu OO. Zacznę od oczywistej różnicy: Jeśli nie określisz public: lub private:, członkowie struktury są domyślnie publiczni; …
Czy metoda, która implementuje metodę interfejsu, powinna być opatrzona adnotacjami @Override? Javadoc z Overridedopiskiem mówi: Wskazuje, że deklaracja metody ma zastąpić deklarację metody w nadklasie. Jeśli metoda jest opatrzona adnotacjami za pomocą tego typu adnotacji, ale nie zastępuje metody nadklasy, kompilatory są wymagane do wygenerowania komunikatu o błędzie. Nie sądzę, …
To może być ogólne pytanie dotyczące OOP. Chciałem dokonać ogólnego porównania interfejsu z klasą abstrakcyjną na podstawie ich użycia. Kiedy chciałoby się użyć interfejsu, a kiedy klasy abstrakcyjnej ?
Widziałem to w czyimś kodzie. Co to znaczy? def __enter__(self): return self def __exit__(self, type, value, tb): self.stream.close() from __future__ import with_statement#for python2.5 class a(object): def __enter__(self): print 'sss' return 'sss111' def __exit__(self ,type, value, traceback): print 'ok' return False with a() as s: print s print s
Czytałem przez C ++ FAQ i byłem ciekawy frienddeklaracji. Osobiście nigdy go nie używałem, ale interesuje mnie odkrywanie języka. Jaki jest dobry przykład używania friend? Trochę dłużej czytając FAQ Podoba mi się pomysł << >>przeciążania operatora i dodawania go jako przyjaciela tych klas. Nie jestem jednak pewien, w jaki sposób …
Jeśli chodzi o Javę, gdy ktoś pyta: co to jest polimorfizm? Czy przeciążenie lub zastąpienie byłoby akceptowalną odpowiedzią? Myślę, że jest w tym coś więcej. JEŚLI masz abstrakcyjną klasę podstawową, która zdefiniowała metodę bez implementacji i zdefiniowałeś tę metodę w podklasie, czy to wciąż jest nadrzędne? Myślę, że przeciążenie nie …
Ucząc się Celu C i czytając przykładowy kod, zauważam, że obiekty są zwykle tworzone przy użyciu tej metody: SomeObject *myObject = [[SomeObject alloc] init]; zamiast: SomeObject *myObject = [SomeObject new]; Czy jest ku temu powód, ponieważ przeczytałem, że są one równoważne?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.