Yazar |
|
ridaniye
antalya
Kayıt: 26.04.2006 |
|
Arkadaslar benim soyle bir problemim var.
Yazdigim programin kullandigi bir class kullanim aninda degisiyor. Ama JVM de calisan ClassLoader bunu desteklemiyor. java.lang.ClassLoader, bir kere yukledigi classi bir daha yuklemiyor.
Yani:
Class1 c1=new Class1(); //ClassLoader Class1 nesne yapisini JVM ye yukluyor
Class1 c2=new Class1(); //Burada yukleme yapmiyor. Daha evvel yuklemisti cunku.
Eger, bu iki kod arasinda Class1 i degistirip derlerseniz hic birsey degismiyor. Program yeniden baslamadikca yeni halini kullanamiyoruz.
Bir cozum bilen var mi?
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
new ile oluşturduğun nesne zaten memory ye yerleşir ona birşey yapmazsın.
illa da o nesne üzerinde değişiklik yapmak istiyorsan içindeki verileri static yaparsın.
bütün classlar aynı nesneyi kullanmasını istiyorsan ozaman o classın tek instance oluşturmasını sağlaman lazım. bi ebook upload edicem buraya ilk 1-2 chapterını okursan sorununu halledersin.
N/A
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
http://www.iucoders.com/ebook/
yarın akşam ebook silinmiş olacak ona göre
james gosling üstadın -kendisi javayı icat eden kişidir- keşke bu kitap 10 sene evvel olaydı da burdan java öğreneydim dediği bir kitaptır. 2001 de basılmış şahane bir kitap javaya yeni başlayan herkese tavsiye ederim.
JVM e bir class yüklediğin zaman class kod tarafından erişilemez duruma gelicen garbage collector tarafından silinir. Eğe rebn dinamik olarak runtime de class yükleyecem onla çalışacam diyorsan. java 1.2 den beri dynamic class loading i destekliyor ama burda sen ne yapmak istiyorsun dah a detaylı anlatman lazım.
class.forName ile dışarıdan bir yerden bir classı çağırabilirsin. ama yapmak istediğin o mu bilmiyorum. http://www.javageeks.com/Papers/ClassForName/index.html
N/A
|
|
Yazar |
|
ridaniye
antalya
Kayıt: 26.04.2006 |
|
Orhan hocam, galiba tam anlatamadim :)
Temp kalsoru altinda bir A class i var diyelim. Program kullanildigi esnada kullanicinin istegine gore yeni bir A.java yaziliyor ve derleniyor. Yani A class i tamamen degisiyor.
Ben bu degisen class i kullanmak istiyorum.
Yardimin icin tesekkur ederim.
Ayrica pdf yi indirdim. Cok guzel kitapmis.
|
|
Yazar |
|
clairvoyant
Antalya
Kayıt: 05.05.2006 |
|
ebook için teşekkürler :)
Let`s make this world a better place to live !
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
o zaman belli aralıklarla CLass.forName() yapısını kullanacaksın. Bunu da belli aralıklarla tekrarlayacaksın. Yada uygulamanın classları değiştiği sürece yeniden bunu yukleyeceksin. Java da web uygulamaları bu mantığa örnektir. Tabi bu arada Garbage Collector'u çağırman ve finalize metodlarını kullanman gerekecek ki o classlar hafızadan silinsin.
N/A
|
|
Yazar |
|
ridaniye
antalya
Kayıt: 26.04.2006 |
|
Class.forName yapsina bir ornek gosterebilir misin peki?
Hic kullanmadim daha evvel.
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
yukarıda verdiğim linklerde var.
N/A
|
|
|
|
-
Del.icio.us
-
Digg
-
Facebook
-
Furl
-
Google
-
Blink
-
Simpy
-
Spurl
-
Y! MyWeb
|
|
| | | | |