Aus Superklasse Methode aus aufrufender Subklasse starten

Status
Nicht offen für weitere Antworten.

A.T.

Bekanntes Mitglied
Hallo,
habe gerade ein Problem oder vielleicht auch nur ein Brett vor dem Kopf...
So hier erst mal mein Code, denke ist alles wesentliche drin das man mich versteht. Hoffe ich jeden falls...
Code:
public class SmoothingDifferentiateAlgorithm extends Algorithm implements
		MapConstants {

	public static void computAlgorithm() {
		int wiederholungen = Integer.parseInt(map.get(NUMBEROFRUNS).toString());

		ComputNormalMatrix.computNormalMatrix(map);
		if (!LRZerlegung.computLRZerlegung(map)) {
			algorithmSuccessful = false;
		} else {
			for (int i = 0; i < wiederholungen; i++) {
				computGlaettung();
			}
		}
	}

	public static void computGlaettung() {

	}
}

Code:
public class SmoothingAlgorithm extends SmoothingDifferentiateAlgorithm{
	
	public static void computGlaettung() {
	// Hier wird dann tatächlich was gemacht!
	}
}

Code:
SmoothingAlgorithm.computAlgorithm();

So mein Problem ist das die Methode computGlaettung() aus der Klasse SmoothingDifferentiateAlgorithm aufgerufen wird und nicht aus der SmoothingAlgorithm Klasse. Warum ist das so?
Neben der SmoothingAlgorithm Klasse wird es noch ein paar geben bei denne im wesentlichen nur die computeGlaettung Methode verschieden ist. Der rest ist gleich. Wie bekomme ich es jetzt hin das immer die computeGlaettung Methode aus der Subklasse aufgerufen wird die ich beim Aufruf des ganzen(3tes Codestück) angegeben habe?

Danke schon mal!
Gruß A.T.
 
Wenn du das nicht alles static mahcen würdest, würde das auch funktionieren. Mit static macht das doch auch gar keinen Sinn ???:L
 
Irgendwie bekomme ich das nicht hin...

Also das ist alles static weil es aus einem modalen Dialog herausaufgerufen wird und es soll davon keine Instanzen geben.
 
Statische Methode kann man aber nun einmal nicht in einer abgeleiteten Klasse überschreiben. Eventuell kannst Du ja mit einem Singleton arbeiten?
 
Das erste ist vermutlich auch schwachsinn! Beim zweiten, kann doch Methoden einer Klasse nur benutzen ohne Instanzen zu erzeugen wenn ich die Static mache oder nicht?

Habe das jetzt so gelöst das ich das was wirklich gleich ist in der Superklasse schreibe und das dann aus der Subklasse herausaufrufe dann klappt das auch.

Hoffe ich mache da nicht den totalen schwachsinn!?
 
A.T. hat gesagt.:
Das erste ist vermutlich auch schwachsinn! Beim zweiten, kann doch Methoden einer Klasse nur benutzen ohne Instanzen zu erzeugen wenn ich die Static mache oder nicht?
das stimmt schon, die Frage ist, warum du davon keine Instanz erzeugen willst ?!
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben