potevi editare no?
devi togliere ilcodice:class ClasseA { protected boolean var; ClasseA(){} boolean getVariabile() { var = false; return var; } } class ClasseB extends ClasseA { private int ciao; ClasseB(int a) { ciao = a; var = true; } } public class Class { public static void main(String[] args) { ClasseB prova = new ClasseB(4); System.out.println(prova.getVariabile()); } }
private boolean var
sennò la variabile della superclasse viene ofuscata da quella della sottoclasse e devi rocorrere a super per accederci.
Se togli la variabile la classe si riferisce automaticamente a quella della superclasse.
Inoltre è normale che ritorni il valore che gli da la classeA perchè var viene impostata a false da GetVariabile() che viene chiamato dopo il costruttore di ClasseB che lo imposta a true.
![]()