Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Programiranje Programski jezici, tehnike, alatke...

 
 
Alatke vezane za temu Vrste prikaza
Stara 20.12.2012, 22:57   #1
ivan90BG
Veteran
 
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
Određen forumom How to... Java

Sad sam primetio da pored VB, C# i C++ nema How to... Java.

Elem, nije how to pitanje već više jedna observacija.

U sledećem Wikipedia članku http://en.wikipedia.org/wiki/Escape_analysis stoji sledeći primer iz Jave:
Kod:
class A {
	final int finalValue;

	public A( B b ) {
		super();
		b.doSomething( this ); // this escapes!
		finalValue = 23;
	}
 
	int getTheValue() {
		return finalValue;
	}
}

class B {
	void doSomething( A a ) {
		System.out.println( a.getTheValue() );
	}
}
Probao sam i ovo jeste validan Java kod. Odnosno dozvoljeno je da se unutar konstruktora this referenca da kao argument nekoj metodi, ali onda objekat nije konstruisan do kraja, pa samim tim nije validan objekat klase A. I kao što sam i mislio kada se konstruiše A objekat na konzoli se odštampa 0.

Tako da u suštini ovo postavljam kao podsetnik da nije bezbedno pisati ovakav kod, iako Java kompjaler ne daje nikakva upozorenja.

p.s. Ovo takođe nije validan primer escepa-a pointera, jer referenca prosleđena metodi doSomething(A a) neće preživeti po završetku poziva te metode. This će svakako da escape-uje iz konstruktora, samo ne kroz taj poziv. Baš me čudi od Wikipedie. (naravno napisaću bolji primer i izmeniti članak)
ivan90BG je offline   Odgovor sa citatom ove poruke
 

Bookmarks sajtovi

Tagovi
java


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Java - out of Memory Vajsmilan Aplikativni softver 6 6.2.2012 20:54
Android - pozivanje Java metoda iz native koda voodoo_ Programiranje 5 14.10.2011 8:59
Samsung D600 Java upload (USB cable) Aleksandar Programi za mobilne telefone 0 16.6.2008 13:54
Jel' se ovo misli na Java Script ili? Tim85 Internet tehnologije 2 7.12.2006 12:33
G-thing program za LG(imam U8180) za java igre trazim gde ima? besplatno?trial? Ilic Marko Programi za mobilne telefone 1 9.2.2006 14:09


Sva vremena su po Griniču +2 h. Sada je 1:05.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com