English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
статические методы или блоки принадлежат этому классу и загружаются в память вместе с классом. Вы можете вызывать статические методы без создания объекта (используйте имя класса в качестве ссылки).
Где в Java " super " в статическом методе. Это означает, что для использования метода "super" его должен вызывать объект, а статический метод не является объектом.
Таким образом, не может быть использовано ключевое слово " super "ключевое слово".
В следующем примере Java программа ThisExample содержит класс с методами setter и getter и экземплярным методомdisplay()частная переменнаяИмя。От метода main (статический метод), мы пытаемся использовать ключевое слово this для вызова метода display().
class SuperClass{ protected String name; } public class SubClass extends SuperClass { private String name; public static void setName(String name) { super.name = name; } public void display() { System.out.println("name: " + super.name); } public static void main(String args[]) { new SubClass().display(); } }
SubClass.java:7: ошибка: нестатическая переменная super не может быть ссылана из статического контекста super.name = name; ^ 1 ошибка