przypisywanie podklas

0

Nie ogarniam do końca this super itp. więc nie umiem zrobić czegoś takiego(mógłby ktoś wytłumaczyć jak zrobić żeby działało?):

public class MainActivity extends Activity {
int a = 0;
int b = 0;
	private Klasa klasa = Klasa0(MainActivity.this);
//The method Klasa0(MainActivity) is undefined for the type MainActivity
[...]
klasa.upd();
//The method upd() is undefined for the type Klasa
public class Klasa {
	}
}
public class Klasa0 extends Klasa {
	MainActivity main;
	public Klasa0(MainActivity c){
		main = c;
	}
	public void upd() {
			main.a = 35;
	}
} 
public class Klasa1 extends Klasa {
	MainActivity main;
	public Klasa1(MainActivity c){
		main = c;
	}
	public void upd() {
			main.b = 20;
	}
} 

chodzi o to, żeby do jednej zmiennej przypisywać różne podklasy i wywoływać funkcję. Co należy zmienić, i czy tak się w ogóle da?

0

ok pierwszy błąd to nie dodałem "new" , ale dalej nadal jest to samo ;/

0

A może najpierw nauczysz się javy zanim weźmiesz się za androida? o_O

new Klasa0(this);

Ale musisz to wywołac z poziomu konstruktora albo metody, w takiej inicjalizacji jak próbujesz się nie da.

0

jakby to powiedział amerykaniec "bulszit"

new Klasa0(this);

this przekazuje Context czy coś a nie activity

a wracając znalazłem odpowiedź powinno być

((Klasa0)klasa).upd();
0

sorry za double posta, ale to jest newbie, więc takie pytania powinny być rozpatrywane normalnie, a nie z pretensją

1 użytkowników online, w tym zalogowanych: 0, gości: 1