View previous topic :: View next topic |
Author |
Message |
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 14.03.2008 14:53 Post subject: Actionscript klase i podklase - boli glava :) |
|
|
I've got a problem
u jednoj klasi A uvlacim xml podatke. Tu instanciram objekt tipa klase B i prosljeđujem te podatke.
Code: |
var objekt:B = new B(podaci);
|
E sad, klasa B je podklasa klase C
Code: |
class B extends C{..}
|
ja bi htjela u konstruktoru klase C koristit podatke iz klase A, koje prosljeđujem kao parametar prilikom instanciranja objekta klase B.
kako da ti podaci stignu do klase C?
nadam se da nisam zakomplicirala... help! |
|
|
Back to top |
|
|
gorrc
Joined: 12 Jul 2007 Posts: 87
|
Posted: 14.03.2008 17:20 Post subject: Re: Actionscript klase i podklase - boli glava :) |
|
|
class A
{
var loadXML = lodiranjeXML
var classB = new ClassB(loadXML)
}
class C
{
public function C(xml) /// pozivanje konstruktora
{
//bla bba
}
}
class B extends C
{
public function B (xml)
{
super(xml)
}
}
U biti s naredbom super pozivaš konstruktor klase koja je extended.
To ako ne učiniš Flash Player će sam učiniti , no ipak je bolje sam pozvati ili explicit |
_________________ www.topnogomet.com -- http://www.gorrc.blogspot.com/ - http://code.google.com/p/bet-script/ |
|
Back to top |
|
|
fun.ky
Joined: 05 Jan 2006 Posts: 365 Location: Mostar
|
Posted: 14.03.2008 17:23 Post subject: |
|
|
Hmm... neznam jesam li dobro skontao al ako klasa b naslijeđuje od klase c, onda sve one stvari (metode, propertie) koje ne override-aš u klasi b će ti biti u klasi c. I to je to.... |
_________________ There is no style definition for good music! |
|
Back to top |
|
|
gorrc
Joined: 12 Jul 2007 Posts: 87
|
Posted: 14.03.2008 18:01 Post subject: |
|
|
fun.ky wrote: | Hmm... neznam jesam li dobro skontao al ako klasa b naslijeđuje od klase c, onda sve one stvari (metode, propertie) koje ne override-aš u klasi b će ti biti u klasi c. I to je to.... |
Nažalost to nije tako, ako B nasljeđuje od C onda ono što je u B neće biti C ali ono što je u C biti će i u B.
To je bit nasljeđivanja.
Da bi nešto novo došlo u C moraš raditi override ili pozvati klasu koju se nasljeđuje pomoću super kao što smo učinili u gornjem slučaju. |
_________________ www.topnogomet.com -- http://www.gorrc.blogspot.com/ - http://code.google.com/p/bet-script/ |
|
Back to top |
|
|
fun.ky
Joined: 05 Jan 2006 Posts: 365 Location: Mostar
|
Posted: 15.03.2008 20:15 Post subject: |
|
|
Neznam jesam li razumio pitanje, al ono što sam napisao je ispravno , evo primjer u C#
Code: | public class C
{
public virtual void CallMe()
{
MessageBox.Show("Hello from C");
}
public void CallMeMe()
{
MessageBox.Show("Hello from C");
}
}
public class B : C
{
public override void CallMe()
{
MessageBox.Show("Hello from B");
}
}
//Sada pozovemo metode na objektu tipa B
B objB = new B();
objB.CallMe();
objB.CallMeMe();
|
rezultat je :
Hello From B
Hello From C
E sada ono što je sporno jeste dali sam ja dobro shvatio pitanje... |
_________________ There is no style definition for good music! |
|
Back to top |
|
|
gorrc
Joined: 12 Jul 2007 Posts: 87
|
Posted: 16.03.2008 00:00 Post subject: |
|
|
[quote="fun.ky"]Hmm... neznam jesam li dobro skontao al ako klasa b naslijeđuje od klase c, onda sve one stvari (metode, propertie) koje ne override-aš u klasi b će ti biti u klasi c. I to je to.... [/quote
Nemoj se ljutiti ali ti si ovdje napisao da klasa b nasljeđuje od c i da sve metode i property koji su u klasi B će biti i u klasi C
evo primjera.
class c
{
bla bla
}]
class b extends c
{
function static zoviMe()
{
bla bla
}
}
var newClassC:C= new C();
c.zoviMe() // izbacuje grešku.
U ovom tvojem primjeru ti si napravio override super klase, sukladno tome što sam ranije napomenuo da klasa koja nasljeđuje može ubacivati, mjenjati super klasu samo preko override i super.
Da si napravio novu metodu u B klasi (ne override ili super) ti ne bi mogao pozvati tu methodu u C klasi. Mislim da je u tome stvar. |
_________________ www.topnogomet.com -- http://www.gorrc.blogspot.com/ - http://code.google.com/p/bet-script/ |
|
Back to top |
|
|
fun.ky
Joined: 05 Jan 2006 Posts: 365 Location: Mostar
|
Posted: 17.03.2008 08:13 Post subject: |
|
|
Znam da smo offtopic, al mislim da je momak dobio odgovor, a što se tieč nas dvojice nismo se razumili ja sam govorio ovo što sam sa code-om napisao, trebao sam reći sve metode iz klase c koje se ne override-a u klasi b
Al nevažno, myth busted |
_________________ There is no style definition for good music! |
|
Back to top |
|
|
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 17.03.2008 12:17 Post subject: |
|
|
hvala, gorrc i funky!
momak je dobio odg!
probavala sam i ja sa super ali ovako
super.C(xml)
|
|
|
Back to top |
|
|
fun.ky
Joined: 05 Jan 2006 Posts: 365 Location: Mostar
|
Posted: 17.03.2008 20:50 Post subject: |
|
|
Pardon, djevojka:) |
_________________ There is no style definition for good music! |
|
Back to top |
|
|
|