Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Java klase i nasledjivanje

[es] :: Java :: Java klase i nasledjivanje

[ Pregleda: 5571 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

proNick

Član broj: 44117
Poruke: 53
*.dynamic.sbb.co.yu.



Profil

icon Java klase i nasledjivanje22.09.2006. u 21:04 - pre 169 meseci
Pozdrav!

Mucim se sa nekim stvarima vezanim za Java klase i njihovo nasledjivanje.

Naime, imam klasu TableView koja je extended klase MyTable.

U TableView imam metodu koja se zove setData, i koja je definisana kao

Code:
public void setData(String head[], String sql, String fil, String so, boolean n[]) {....



Takodje, imam jos jednu klasu PrintLayout, koja je podklasa MyTable, tj definisanu kao

Code:
public class PrintLayout extends MyTable...



Da li mozete da mi pomognete da iz PrintLayout pozivam metodu setData?


Hvala unapred!
 
Odgovor na temu

dimitar 16
Dimitar Misev
Makedonija

Član broj: 31509
Poruke: 134
62.162.20.*

Jabber: dimitarmisev@gmail.com


Profil

icon Re: Java klase i nasledjivanje22.09.2006. u 22:00 - pre 169 meseci
Pa napravi objekt klasa TableView i pozovi taj metod preko objekt.

Code:

TableView t = new TableView ();
t.setData (...);
 
Odgovor na temu

aleksandarpopov
IT consultant
Senta

Član broj: 57172
Poruke: 484
*.sabotronic.co.yu.

Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Java klase i nasledjivanje23.09.2006. u 09:09 - pre 169 meseci
Ne bih rekao da ti je dizajn dobar....
Da nasledjujes nesto za stampanje iz tabele... Mozda bi ti bilo bolje da napravis posebnu klasu za stampanje koja ce imati neki metod koji prihvata kao parametar tabelu sa vec popunjenim podacima i to da stampa...
Pozdrav
RTFM
 
Odgovor na temu

rj444
Radomir Jakovljevic
Beograd

Član broj: 48212
Poruke: 354
*.rcub.bg.ac.yu.



Profil

icon Re: Java klase i nasledjivanje23.09.2006. u 10:09 - pre 169 meseci
Ako u klasi MyTable nemas definisanu metodu setData, a u njenoj podklasi TableView si je definisao, nikako je ne mozes pozivati iz drugih podklasa klase MyTable, koje same nemaju definisanu ovu metodu.

Pozdrav
 
Odgovor na temu

proNick

Član broj: 44117
Poruke: 53
*.dynamic.sbb.co.yu.



Profil

icon Re: Java klase i nasledjivanje23.09.2006. u 17:04 - pre 169 meseci
Koji bi bio drugi nacin da organizujem ceo code, da bih mogao da pozivam setData iz klase PrintLayout?

Pokusavao sam da klasu PrintLayout napravim kao extended klase TableView, ali dobijam poruku

Code:
method <init> not found in class izvestaj.TableView




Veliko hvala unapred!
 
Odgovor na temu

djalfirevic

Član broj: 76932
Poruke: 497
*.dynamic.sbb.co.yu.



Profil

icon Re: Java klase i nasledjivanje23.09.2006. u 18:06 - pre 169 meseci
Jako je tesko ljudima da ti pomognu, kada im das vrlo malo podataka za rad...

Sta program treba da radi???

Neko moze nesto reci, a da ispadne glup samo zato sto ne zna sta program treba da radi.. (bez uvrede naravno)

Meni je prvo palo na pamet, da napravis metodu u PrintLayout koja kao parametar prima objekat TableView, i da onda pozoves metodu setData() tog objekta kojeg si predao kao formalni argument metode...

Mozda je to resenje a mozda nema uopste smisla to sto sam napisao....

 
Odgovor na temu

glorius
Damir Nikolic
C++ developer
SR

Član broj: 4366
Poruke: 428
217.26.79.*

ICQ: 208550327


+14 Profil

icon Re: Java klase i nasledjivanje24.09.2006. u 20:14 - pre 169 meseci
Resenje je prosto...

Pomeri interface i implementaciju SetData u MyTable...

Neko ce reci da je migriranje interfejsa u baznu klasu losa stvar ali u ovom slucaju bi i podaci koji se setuju mogli da budu u MyTable klasi da bi bili dostupni ostalim klasama ( ako to zahteva dizajn, naravno )...


EOF
 
Odgovor na temu

proNick

Član broj: 44117
Poruke: 53
*.dynamic.sbb.co.yu.



Profil

icon Re: Java klase i nasledjivanje27.09.2006. u 17:48 - pre 168 meseci
Damire,

Hvala na odgovoru, ali ako bih prebacio SetData u MyTable morao bih da menjam jos gomilu stvari u programu, tako da moram da nadjem neko drugo resenje.
 
Odgovor na temu

sosingus

Član broj: 31461
Poruke: 140
*.grappoloin.com.

Sajt: www.sportin.biz


Profil

icon Re: Java klase i nasledjivanje30.09.2006. u 13:18 - pre 168 meseci
Vidi, moram da ti kazem da ako pokusavas napraviti neki sistem stampe ocito je da si lose modelovao taj deo kao sto ti je i aleksandarpopov rekao ... besmisleno je praviti PrintLayout kao extenziju tabele i nikako neces napraviti dobro resenje ovim putem. Pa ako je tako dobro razmisli o tome...

Druga stvar je da ako hoces putem nasledjivanja da pristupis metodu setData koji se nalazi u TableView klasi, jedini nacin da to ucinis je da PrintLayout nasledi TableView. Tada ces imati dostupne i public i protected metode i od TableView i od MyTable klase.

 
Odgovor na temu

hesstija1985
Knjazevac

Član broj: 323078
Poruke: 1
*.dynamic.isp.telekom.rs.



Profil

icon Re: Java klase i nasledjivanje21.05.2014. u 10:51 - pre 75 meseci
Imam i ja jedan problem...da li iko moze pomoci oko resavanja sledeceg>

1. Klase A, B, C, D, E, F, M1 su u paketu P1, i svaka klasa je napisana u posebnom fajl.
a) Otkriti greške u definicijama klasa A, B, C, D, E, F i navesti vrstu greške.

abstract public class A {
int x;
char c;
public A() {x=1;}
public A(char b){super(); c=b;}
abstract public boolean m1();
abstract public int m2(int y);}
}
public class B extends A {
protected String s;
static int n=0;
private int id;
public B(B b) {s=b.s; id=n++;}
B(String h){s=h;super('b');id=n++;}
public boolean m1(){return n>5;}
public int m2(int y){return y*id;}
public static int m3(){return id;}
}
public class C extends B {
private double r;
public C() {}
public C(double r) {this.r=r;}
public C(C o) {super(o);r=o.r;}
final public int m2(int y)
{return (int)(r*y);}
double m4(){return c;}
}
public class D extends C {
public boolean m;
double r;
public D() {}
D(C o) {super(o);m=true;}
public D(boolean t) {super();m=t;}
public int m2(int y)
{return y +(int)r;}
double m4(){return super.r;}
}
public class E extends C {
private String m;
public E() {m="klasaE";}
E(String m,C c){super(m);this.m=m;}
public E(String h) {m=h;}
public void m5(String h){m=h;}
public double m5(int m){return m*x;}
E m5(){return new E("E", this);}
}
public class F extends A {
private double r,p,h;
public F() {}
F(double m,char n){super(n);r=p=h=m;}
public boolean m1(){return r<p;}
public int m3(int y){return y*r;}}

b) U telima metoda main klasa M1 i M2 obeležiti sve ispravne linije koda znakom “+”, a neispravne znakom “–”. Smatrati da su klase A, B, C, D, E, F
ispravno napisane i da svi članovi ovih klasa koji se koriste u M1 i M2 imaju specifikatore pristupa i tipove koji su navedeni.
// Sadržaj fajla M1.java
package P1;
class M1 {
public static void main(String a[]){
A a1 = new A('a');
A a2 = new B("ispit");
A a3 = new C();
B b1 = new C();
B b2 = new B(b1);
C c1 = new E("ispit");
C c2 = new C(a1);
C c3 = new D(c1);
A a4 = new D(b2);
B b3 = new E("i", c1);
D d1 = new E();
D d2 = new C();
D d3 = new D(false);
E e1 = new E('t');
E e2 = new F(1, 'a');
E e3 = c3;
E e4 = new E("ispit", d1);
E e5 = e4.m5();
F f1 = e5.m5();
F f2 = c3;
F f3 = new F(a1.x,a1.c);
B b4 = new D(f3.m1());
E e6 = new E(e5.m);
double f = c3.r;
e5.m5("ispit");
double t = B.m3();
String y = B.n;
double u = d1.r + d1.x;
char g = e5.c;
}
}
// Sadržaj fajla M2.java
package P2;
import P1.*;
class M2 {
public static void main(String a[]){
A a1 = new F();
B b1 = new D(true);
C c1 = new C();
D d1 = new D(c1);
E e1 = new E("",c1);
E e2 = e1.m5();
String g = b1.s;
F f1 = new F(2,'b');
int u = B.n;
boolean m = d1.m;}
}
 
Odgovor na temu

[es] :: Java :: Java klase i nasledjivanje

[ Pregleda: 5571 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.