Wie funktioniert dieses Schlüsselwort in einer abstrakten Klasse [Duplikat]

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie funktioniert dieses Schlüsselwort in einer abstrakten Klasse [Duplikat]

by Guest » 25 Dec 2024, 22:50

Bitte verzeihen Sie meinen Code und konzentrieren Sie sich nur auf die Frage hier:
Wir wissen, dass das private Feld nicht vererbt wird und wenn ich in Zeile 2 ein Objekt erstelle, wird das Objekt erstellt Person und wenn ich dann den FatherName festlege, wird innerhalb von setFatherName() angezeigt, wie dieses „Objekt der Person“ die Sichtbarkeit hat, um die Testklasse festzulegen privater Vatername?

Code: Select all

abstract  class  Test {
private String fatherName ;

public void setFatherName(String fatherName){
System.out.println(this.getClass().getSimpleName());
this.fatherName=fatherName;
}
public String getFatherName(){
return  fatherName;
}
}

Code: Select all

public class Person extends  Test{

public static void main(String[] args) {
Test person = new Person(); // #2
person.setFatherName("Jimmy");
System.out.println("father name is : " +person.getFatherName());

}
}
Ausgabe:

Code: Select all

Person
father name is : Jimmy
Ich verstehe den Kontext, dass ich es indirekt mit einem Setter mache, aber wie funktioniert dieses Schlüsselwort hier in der abstrakten Klasse, da das Objekt eine Person ist. Ich habe mein Bestes gegeben, um die Frage korrekt zu stellen.

Top