Třída, konstruktor, statická metoda – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Třída, konstruktor, statická metoda – Java – Fórum – Programujte.comTřída, konstruktor, statická metoda – Java – Fórum – Programujte.com

 

13. 11. 2013   #1
-
0
-

Zdravím, chtěl bych se zeptat, jak řešit tuto úlohu. Sice vím co je to třída, co je to konstruktor, statická metoda, ale neumím to dát do souvislosti, neporadil by někdo?

Napiš kód třídy kruh, který má atribut poloměr,
konstruktor, který všechny záporné zadané hodnoty pro poloměr mění na kladné
metody pro vrácení poloměru vrácení hodnoty obvodu vrácení hodnoty obsahu kruhu
napiš kod třídy, která vytvoří odkaz na třídu kruh a vypíše o něm info
třída vlastní pouze jednu statickou metodu
 

Nahlásit jako SPAM
IP: 77.48.106.–
sleepy
~ Anonymní uživatel
422 příspěvků
13. 11. 2013   #2
-
0
-

Mas napisat triedu s nejkym kostruktorom, ktory zobere double r ako svoj argument a vytvori triedu a mas napisat telo tej triedy aby si z nej dokazal dostat polomer, obsah a obvod. Uvediem ktora bere string ako argumen s metodou ktora ho zasifruje (je to velmi podobny princip, skoro totozne):

class CipherMsg{
	private final String secretString;
	public CipherMsg(String str) {
		this.str = str;
	}

	public String getCipheredString() {
		char[] cpihered = new char[secretString.length()];
		char[] msg = secretString.getChars();
		for(int k=0; k<msg.length; k++) {
			ciphered[k]=msg[k]^47;
		}
		return new String(ciphered);
	}
}

Akurat tu je len 1 metoda a ty mas vytvorit 3 a v konstruktore nieco urobit.

Nahlásit jako SPAM
IP: 147.175.177.–
13. 11. 2013   #3
-
0
-

#2 sleepy
Nemohl byste to nějak více rozepsat? jsem přeci jen začátečník. Děkuji.

Nahlásit jako SPAM
IP: 77.48.106.–
NotBeginner
~ Anonymní uživatel
185 příspěvků
13. 11. 2013   #4
-
0
-

Nebudu ti to celé vypisovat(spíž jenom začatek aby ses chytl), přeci jenom namáhej hlavičku makovičku  

// trida kruh
class Kruh {
	// atribut polomer
	private int polomer;
	// konstruktor
	Kruh(int zapor) {
		//	pres funkci absolutni hodnoty zjistis kladnou hodnotu
		this.polomer = Math.Abs(zapor);
	}
	//	metoda vraceni polomeru tvz. getter
	public int ziskejPolomer() return polomer;
	//	ty dalsi metody(obvod,obsah) si vytvor sam analogicky
	...
}

Nahlásit jako SPAM
IP: 86.49.87.–
Flowy0
Věrný člen
13. 11. 2013   #5
-
0
-

to je KU1 alebo nejaka ina uloha?

Nahlásit jako SPAM
IP: 178.41.199.–
https://github.com/Flowy
sleepy
~ Anonymní uživatel
422 příspěvků
14. 11. 2013   #6
-
0
-

#3 diabolus99
Nezauimaj sa o obsah tej metody, zameraj sa len na to ako je to napisane ako uz nizsie napisal NotBeginer treba to tak napisat. Ty mas jednoducho objekt v tom objekte su premenne a metodami s nimi nejako interagujes, napriklad chces polomer tak budes volat metodu getPolomer(), ci sa v nej nieco pocita alebo len odosles hodnotu tvojej premennej, ak chces obsah budes volat getObsah() tam znova nieco treba urobit atd. Predstav si to takto kruh je objekt ma nejake atributy (polomer,obsah, obvod, pozicia, a neviem co ine sa da este vymysliet). No nie vsetky su uplne nezavysle napr. jeho obsah je S = pi*r^2 a obvod je O=2*pi*r. Pi je konstanta tak ako 2 cize ti staci drzat iba jeho polomer (ak teraz neuvazujeme poziciu, farbu, otocenie ;), uhlovu rycholost .... (tie posledne ani nemate to je iba pre lepsiu predstavu)).

Takze je rozumne to spravit tak ze v tom kruhu budes mat ulozeny iba polomer a za kazdym ak si nejaky iny objekt vypyta od kruhu {Polomer, Obsah, Obvod} tak ho vypocitas. Ten objekt si to bude pitat pomocou metody getPolomer(), resp. getObsah(), getObvod(). Takze tvojou ulohou je napisat telo tycho metod, v Instancii Kruh. Toto by som nemal robit, ale:

class Rectangle{
	private double width, height;
	public Rectangle(double width, double height) {
		if(width < 0 || height < 0)
			throw new IllegalArgumentException() // ty mas urobit nieco ine ja hodim vynimku ak je vyska alebo sirka < 0
		this.width = width;
		...
	}

	public double getWidth() { //touto metodou vraciam sirku daneho obdlznika
		return this.width;
	}

	...

	public double getArea() { //touto zase obsah
		return width * ...;
	}
}

Tam kde su bodky treba dalsi kod, ale to uz ti nebudem dalej radit. Uz to tu mas 3x napisane.

Nahlásit jako SPAM
IP: 147.175.177.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Staticka metoda — založil jonhnw

Abstraktni staticka metoda — založil Dusan R.

Interface - statická metoda — založil Miloš

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý