super
используется для доступа к переменным и функциям суперкласса. super
используется для вызова конструктора суперкласса.
Статические переменные - это переменные, значения которых являются общими для всех объектов класса. Это как один экземпляр для всех объектов. Пример:
int a; //variable of someclass
static int b; //variable of someclass
someclass ob=new someclass();
someclass ab=new someclass();
ab
и ob
будут иметь разные копии переменной a
, так как a
не является статическим. Но они поделятся одной копией b
.
поэтому, a
доступен с использованием имени объекта (так как каждый объект obbject имеет уникальную копию).
ob.a=1;
ob.b=2;
И доступно b
с использованием имени класса. someclass.b=4
(значение остается 4 для всего объекта).
Таким образом, статическая переменная означает только одну копию и, следовательно, она разделяется всеми объектами и не уникальна для объекта, и именно по этой причине ее нельзя получить с помощью имени объекта.
Это то же самое с переменной xb
. Это не статическая переменная, поэтому каждый объект имеет копию. Получите доступ к ней, используя имя объекта.