Article View: pl.comp.lang.java
Article #153977Re: Zagadnienie polimorfizmu?
From: A.L.
Date: Sat, 28 Dec 2013 03:29
Date: Sat, 28 Dec 2013 03:29
59 lines
2476 bytes
2476 bytes
On Thu, 12 Dec 2013 03:00:35 -0800 (PST), Jadalbert
<jadalbert.wincent@gmail.com> wrote:
>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?
1. A jak klasa Figura ma atrybut "pole" to dlaczego ma nie miec
atrybutu "obwod"
2. public double getPole() powinno byc "abstract". Obliczanie pola
powinno byc zostawione dla podklasy
3. Podobnie public double getObwod() powinno byc abstract a obliczanie
powinno byc zostawione dla podklasy
4. getObwod() i getPole() maja wiecej do roboty niz zworcenie wartosci
atrybutu, bo ktos musi to pole i ten obwod policzyc
A.L.
Technical Details
Message-ID:
<20hsb9965f06nuifpeo5tud9nh7cmc3dbb@4ax.com>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!news.unit0.net!feeder.erje.net!us.feeder.erje.net!news.glorb.com!news-in-01.newsfeed.easynews.com!easynews!core-easynews-01!easynews.com!en-nntp-13.dc1.easynews.com.POSTED!not-for-mailReferences:
<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!news.unit0.net!feeder.erje.net!us.feeder.erje.net!news.glorb.com!news-in-01.newsfeed.easynews.com!easynews!core-easynews-01!easynews.com!en-nntp-13.dc1.easynews.com.POSTED!not-for-mail From: A.L. <alewando@aol.com> Newsgroups: pl.comp.lang.java Subject: Re: Zagadnienie polimorfizmu? Message-ID: <20hsb9965f06nuifpeo5tud9nh7cmc3dbb@4ax.com> References: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com> User-Agent: ForteAgent/7.00.32.1200 MIME-Version: 1.0 Lines: 60 X-Complaints-To: abuse@easynews.com Organization: Forte Inc. http://www.forteinc.com/apn/ X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly. Date: Fri, 27 Dec 2013 21:29:04 -0600 X-Received-Bytes: 2274 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit