W programowaniu obiektowym (OOP) klasa wewnętrzna lub klasa zagnieżdżona to klasa zadeklarowana w całości w treści innej klasy lub interfejsu. Jednak w Javie klasa wewnętrzna jest niestatyczną klasą zagnieżdżoną.
Mam taką sytuację ... class Outer(object): def some_method(self): # do something class Inner(object): def __init__(self): self.Outer.some_method() # <-- this is the line in question Jak mogę uzyskać dostęp do Outermetody Innerklasy z poziomu klasy?
Czy możliwe jest utworzenie klasy wewnętrznej w interfejsie? Jeśli to możliwe, po co mielibyśmy tworzyć taką klasę wewnętrzną , skoro nie zamierzamy tworzyć żadnych obiektów interfejsu? Czy te klasy wewnętrzne pomagają w jakimkolwiek procesie rozwoju?
class OuterClass { class InnerClass { static int i = 100; // compile error static void f() { } // compile error } } Chociaż nie jest możliwy dostęp do pola statycznego za pomocą OuterClass.InnerClass.i, jeśli chcę zarejestrować coś, co powinno być statyczne, np. Liczbę utworzonych obiektów InnerClass, pomocne byłoby …
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.