| | |
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
Registrovaný: 11.02.09 Prihlásený: 28.03.23 Príspevky: 2208 Témy: 145 Bydlisko: Liptovský M... |
Prečo sa tu v metode vytvara novy objekt ageInput a az z neho sa ziskava retazec string? Kód: protected int getAge(){
EditText ageInput = ((EditText)findViewById(R.id.edittext)); String ageStr = ageInput.getText().toString();
Nedalo by sa pouzit skratene String ageString = (EditText)findViewById((R.id.edittext).getText().toString() ?
_________________ "Only a warrior chooses pacifism, others are condemned to it." - unknown author |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 26.03.2014 18:08 | |
|
Ak to funguje, tak áno dalo. Ale ak by som toto videl niekde v kóde, tak by ma vyvrátilo zo stličky a ten, čo to písal, by si odomňa vyslúžil mastné nadávky. Je to tak proste kvôli prehľadnosti kódu.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 Bydlisko: Bratislava,... | Napísal nBXXL: 26.03.2014 20:16 | |
|
a hlavne nevytvara sa novy objekt, vytvara sa nova referencia, to je dost podstatny rozdiel.
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
Registrovaný: 05.10.06 Prihlásený: 15.10.18 Príspevky: 1891 Témy: 148 Bydlisko: Bratislava | Napísal Kamahl: 27.03.2014 0:42 | |
|
Kludne to tak mozes robit, ale osobne to robim radsej na 2 riadky. A castokrat s tym objektom potom chces este pracovat, tak si ho raz nacitaj do premennej a potom pracuj s nou.
_________________ Notebook Dell 7537, 24" BenQ BL2411PT, Logitech Illuminated keyboard, Razer DeathAdder, Razer Goliathus, Koss Porta Pro |
|
Registrovaný: 11.02.09 Prihlásený: 28.03.23 Príspevky: 2208 Témy: 145 Bydlisko: Liptovský M... |
Ja len či to nahodou nie je naročnejšie na pamäť, ked sa vytvori novy objekt s parametrami povodneho objektu, ale predpokladam ze to bude len nova referencia, ako povedal nBXXL. Kedy sa alokuje v pamati ten objekt, pri setContentView()?
_________________ "Only a warrior chooses pacifism, others are condemned to it." - unknown author |
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 Bydlisko: Bratislava,... | Napísal nBXXL: 27.03.2014 14:51 | |
|
objekty by sa mali vytvarat len pomocou slovicka new.. a ak vytvaras objekt nejakou factory metodou tak ta by zo slusnosti mala mat v nazve slovicko create alebo copy. Ked sa nejaka metoda vola find* alebo get* tak by si mal byt schopny predpokladat, ze metoda vracia referenciu.
a keby aj ta metoda find.. vytvarala v pamati novy objekt tak zuzenim na jeden riadok by si sa toho vytvorenia objektu nezbavil. V skratke: objekty sa nevytvaraju priradenim (operator =).. operator = len priradi do nejakej premennej referenciu na nejaky objekt. Objekty sa vytvaraju cez new, a new vracia priamo referenciu na novo vytvoreny objekt. Mozu existovat tzv. Factory metody ktore v sebe mozu volat new a vracat referenciu na novo vytvoreny objekt. Take metody by zo slusnosti mali nazvom indikovat ze taketo daco robia (maju v nazve create, copy, alebo daco takeho).
Ty ako programator v Jave nepracujes s pamatou a objektami priamo, vsetky premenne s ktorymi pracujes (s vynimkou datovych primitivov, ako napr. int, float..) obsahuju referencie na objekty. Vsetky funkcie vracaju referencie na objekty... Vsetky parametre funkcii su referencie, etc...
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Nový herný počítač do hodnoty 800 eur v PC zostavy | 13 | 1134 | 17.09.2017 20:45 Ivan-K | | Zabranenie ziskaniu IP, browser info... v Sieťové a internetové programy | 9 | 1828 | 17.11.2005 13:31 Pufo Callo | | Neznamy objekt na oblohe [ Choď na stránku: 1, 2, 3, 4 ] v Paranormálne javy a teórie | 94 | 6775 | 07.04.2008 20:49 SilverSurfer | | polopriehladny objekt vo photoshope v Grafické programy | 2 | 911 | 31.08.2007 17:54 Setton | | Zvláštny objekt vnútri smartfónu v Smartfóny a tablety | 6 | 481 | 29.04.2021 6:13 zodiaq | | Rozdiel medzi Java Standard a Java EE v Assembler, C, C++, Pascal, Java | 1 | 844 | 02.04.2014 12:41 XOLOO | | dobre java navody a nova tema JAVA [ Choď na stránku: 1, 2 ] v Assembler, C, C++, Pascal, Java | 35 | 5441 | 09.03.2009 17:14 tlacitko Enter | | unity objekt pod html obsahom v HTML, XHTML, XML, CSS | 0 | 266 | 04.01.2013 0:06 1daemon1 | | Photoshop CS5- ako spriesvitniť objekt? v Grafické programy | 6 | 1169 | 29.10.2011 23:34 stiffy | | Ako vystrihnuť objekt z videa v Video programy | 1 | 470 | 06.11.2015 19:01 chrono | | Lsass.exe Sytemová chyba Objekt nebyl nalezen v Operačné systémy Microsoft | 0 | 306 | 12.03.2012 8:35 Ludovit Hennel | | Kriticky objekt v AD-AWARE SE 1.06 v Antivíry a antispywary | 4 | 1246 | 02.08.2005 22:47 Carlos | | Ako spustit z databazy objekt OLE vo VB6? v Delphi, Visual Basic | 8 | 1247 | 10.11.2008 10:22 84mischo | | Facebook graph-api request, ktory nevracia JSON objekt v Android, iOS, Windows Phone (Mobile) | 6 | 690 | 20.09.2014 14:34 incredible | | JAVA - java.lang.NullPointerException v Assembler, C, C++, Pascal, Java | 1 | 1084 | 04.01.2010 17:05 emigrate | | Program na rozmiestnenie casti textury na dany objekt v Grafické programy | 3 | 407 | 16.08.2010 11:32 Ing.Florek |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|