Pytania otagowane jako super


9
Co robi „super” w Pythonie?
Jaka jest różnica pomiędzy: class Child(SomeBaseClass): def __init__(self): super(Child, self).__init__() i: class Child(SomeBaseClass): def __init__(self): SomeBaseClass.__init__(self) Widziałem, że jestem superczęsto używany na zajęciach z jednym dziedzictwem. Rozumiem, dlaczego miałbyś używać go w wielokrotnym dziedzictwie, ale nie jestem pewien, jakie są zalety korzystania z tego w takiej sytuacji.
563 python  oop  inheritance  super 

7
super () podnosi „TypeError: must be type, not classobj” dla klasy nowego stylu
Następujące użycie super()podnosi typ błędu: dlaczego? >>> from HTMLParser import HTMLParser >>> class TextParser(HTMLParser): ... def __init__(self): ... super(TextParser, self).__init__() ... self.all_data = [] ... >>> TextParser() (...) TypeError: must be type, not classobj Podobne pytanie dotyczy StackOverflow: Python super () podnosi TypeError , gdzie błąd jest wyjaśniony przez fakt, …

15
super () w Javie
Czy super()służy do wywołania konstruktora nadrzędnego? Proszę wyjaśnić super().
222 java  super 

4
super () kończy się niepowodzeniem z błędem: TypeError „argument 1 musi być typem, a nie classobj”, gdy rodzic nie dziedziczy po obiekcie
Mam błąd, którego nie mogę zrozumieć. Masz jakieś pojęcie, co jest nie tak z moim przykładowym kodem? class B: def meth(self, arg): print arg class C(B): def meth(self, arg): super(C, self).meth(arg) print C().meth(1) Otrzymałem przykładowy kod testowy z pomocą wbudowanej metody „super”. Oto błąd: Traceback (most recent call last): File …


1
Dlaczego super () magia Pythona 3.x?
W Pythonie 3.x super()można wywołać bez argumentów: class A(object): def x(self): print("Hey now") class B(A): def x(self): super().x() >>> B().x() Hey now Aby to zadziałało, wykonywana jest pewna magia w czasie kompilacji, której jedną z konsekwencji jest to, że następujący kod (który ponownie supersię wiąże super_) zawodzi: super_ = super …
159 python  python-3.x  super 

4
Python super () wywołuje błąd TypeError
W Pythonie 2.5 poniższy kod wywołuje TypeError: >>> class X: def a(self): print "a" >>> class Y(X): def a(self): super(Y,self).a() print "b" >>> c = Y() >>> c.a() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 3, in a TypeError: super() argument 1 must …

13
Java: wywołanie super metody, która wywołuje metodę przesłoniętą
public class SuperClass { public void method1() { System.out.println("superclass method1"); this.method2(); } public void method2() { System.out.println("superclass method2"); } } public class SubClass extends SuperClass { @Override public void method1() { System.out.println("subclass method1"); super.method1(); } @Override public void method2() { System.out.println("subclass method2"); } } public class Demo { public static …


8
Jak zmusić klasę pochodną do wywołania super metody? (Tak jak robi to Android)
Zastanawiałem się, podczas tworzenia nowych Activityklas, a następnie przesłanianie onCreate()metody w Eclipse zawsze dotrzesz automatycznego dodania: super.onCreate(). Jak to się stało? Czy istnieje słowo kluczowe java w klasie abstrakcji lub nadrzędnej, które to wymusza? Nie wiem, czy niewywołanie superklasy jest nielegalne, ale pamiętam, że w niektórych metodach został zgłoszony wyjątek, …

5
Używanie super z metodą klasową
Próbuję nauczyć się funkcji super () w Pythonie. Myślałem, że to rozumiem, dopóki nie doszedłem do tego przykładu (2.6) i utknąłem. http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#super-with-classmethod-example Traceback (most recent call last): File "<stdin>", line 1, in <module> File "test.py", line 9, in do_something do_something = classmethod(do_something) TypeError: unbound method do_something() must be called with …

11
Kiedy używać super ()?
Obecnie uczę się dziedziczenia klas na moim kursie Java i nie rozumiem, kiedy używać super()wywołania? Edycja: znalazłem ten przykład kodu, w którym jest używany:super.variable class A { int k = 10; } class Test extends A { public void m() { System.out.println(super.k); } } Rozumiem więc, że tutaj musisz użyć, …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.