🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Zagadnienie polimorfizmu?

#153947
From: Jacek Jackowiak
Date: Thu, 12 Dec 2013 21:15
106 lines
3334 bytes
Generalnie zgodzę się ze wszystkim co napisałeś, poza tymi statycznymi metodami. Taka klasa będzie bezstanowa, możemy ją więc traktować jako singleton (najlepiej w jakimś kontenerze IoC) z instancyjnymi metodami. Wtedy zawsze łatwiej coś takiego podmienić w testach (nie wszystkie stubery sobie radzą ze statycznymi metodami)

W dniu czwartek, 12 grudnia 2013 21:51:11 UTC+1 użytkownik Piotr Rezmer napisał:
> Jadalbert pisze:
> 
> 
> 
> > public abstract class Figura {
> 
> 
> 
> > public class Kolo extends Figura {
> 
> 
> 
> > 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 !
> 
> 
> 
> Zacz��bym od uporz�dkowania klas. Czyli najwy�sza klasa: Figura, z nie 
> 
> dziedziczy Krzywa, Powierzchnia, Bry�a.
> 
> Krzywa ma w�a�ciwo�� Obw�d
> 
> Powierzchnia ma w�a�ciwo�� Pole
> 
> Bry�a ma w�a�ciwo�� Obj�to��
> 
> 
> 
> Ko�o, Elipsa, Czworok�t,... dziedzicz� z powierzchni
> 
> Okr�g dziedziczy z Krzywej.
> 
> *�cian dziedziczy z Bry�y.
> 
> 
> 
> Klasa Licz nie powinna otrzymywaďż˝ figury przez konstruktor, gdyďż˝ 
> 
> oznacza�oby to �e przy ka�dym liczeniu musisz wo�a� konstruktor a to 
> 
> kosztuje. Klasa Licz powinna byďż˝ klasďż˝ Utility ze statycznymi metodami, np.
> 
> 
> 
> 
> 
> public class Licz {
> 
> 
> 
> static public Double getPole( Powierzchnia powierzchnia ) {
> 
> ...
> 
> 	return pole;
> 
> }
> 
> 
> 
> }
> 
> 
> 
> 
> 
> 
> 
> 
> 
> -- 
> 
> pozdrawiam
> 
> Piotr
> 
> XLR250&bmw_f650_dakar
Technical Details
Message-ID: <b13bc0a1-4097-4dab-85ea-70533dfb2459@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!ie8no11914947qab.0!news-out.google.com!9ni7692qaf.0!nntp.google.com!p15no22492497qaj.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com> <l8d7kj$2vp$1@node2.news.atman.pl>

Show Full Headers
Complete Article Headers
X-Received: by 10.52.184.228 with SMTP id ex4mr3373765vdc.1.1386882936357;        Thu, 12 Dec 2013 13:15:36 -0800 (PST)
X-Received: by 10.49.110.165 with SMTP id ib5mr71954qeb.28.1386882936329; Thu, 12 Dec 2013 13:15:36 -0800 (PST)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!ie8no11914947qab.0!news-out.google.com!9ni7692qaf.0!nntp.google.com!p15no22492497qaj.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.java
Date: Thu, 12 Dec 2013 13:15:36 -0800 (PST)
In-Reply-To: <l8d7kj$2vp$1@node2.news.atman.pl>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.108.113.114; posting-account=GGrTCAoAAADc86hufNKyRb8XH8ISYvXk
NNTP-Posting-Host: 213.108.113.114
References: <e8a6173d-2e5d-4055-9877-1bc8fa939deb@googlegroups.com> <l8d7kj$2vp$1@node2.news.atman.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b13bc0a1-4097-4dab-85ea-70533dfb2459@googlegroups.com>
Subject: Re: Zagadnienie polimorfizmu?
From: Jacek Jackowiak <jacek1986@gmail.com>
Injection-Date: Thu, 12 Dec 2013 21:15:36 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit