🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.java
Article #153948

Re: Zagadnienie polimorfizmu?

#153948
From: Michal Kleczek
Date: Tue, 17 Dec 2013 09:08
57 lines
2350 bytes
W dniu 2013-12-12 12:00, Jadalbert pisze:
> Jak to właściwie jest. Mam klasę abstrakcyjną (dodam, że rzecz ma się dziać w jsf - co to zmienia, nie wiem)
>
> public abstract class Figura {
> 	public Figura(){}
>
> 	private double pole;
>
> 	public double getPole() {
> 		return pole;
> 	}
> }
>
> i klasę
>
> public class Kolo extends Figura {
> 	public Kolo(){}
>
> 	private double obwod;
>
> 	public double getObwod() {
> 		return obwod;
> 	}
> }
>
> i teraz:
> public class Licz {
> 	private Figura figura;
> 	private double PoleObwod;
>
> 	public Licz() {}
>
> 	public Licz(Figura figura) {
> 		this.figura = figura;
> 	}
>
> 	public double getPoleObwod() {
> 		return figura.getPole() * figura.getObwod();
> // i tu oczywiście błąd bo obwodu nie ma w klasie Figura !
> 	}
> }
>
> w "realu" będzie więcej klas jak Kolo i każda nie dość, że będzie pokrywała metody klasy bazowej to jeszcze będzie miała własne, dodatkowe. I skąd wziąć wiedzę, jakiej klasy jest to co przychodzi w konstruktorze?
>

Moze po prostu:

public class Licz {
   private Kolo figura;
   public Licz(Kolo figura) {
     this.figura = figura;
   }
...
}

--
Michal
Technical Details
Message-ID: <52b0147c$0$2160$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!news-out.readnews.com!transit4.readnews.com!nx01.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!news-out.readnews.com!transit4.readnews.com!nx01.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Tue, 17 Dec 2013 10:08:14 +0100
From: Michal Kleczek <michal_wytnijto@kleczek.org>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
MIME-Version: 1.0
Newsgroups: pl.comp.lang.java
Subject: Re: Zagadnienie polimorfizmu?
References: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com>
In-Reply-To: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com>
Lines: 57
Message-ID: <52b0147c$0$2160$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: apn-46-169-115-139.dynamic.gprs.plus.pl
X-Trace: 1387271292 unt-rea-a-02.news.neostrada.pl 2160 46.169.115.139:1256
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit