folder Tahribat.com Forumları
linefolder Java
linefolder Child Classtan Parent Class'a Değer Atama



Child Classtan Parent Class'a Değer Atama

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    paradox
    paradox's avatar
    Kayıt Tarihi: 23/Nisan/2008
    Erkek

    Arkadaşlar üst üste konu açmak istemiyorum ama I need help again :) cevabı da paylaşacağım ki aynı dertle boğuşan insanlara yol göstersin.

    Timerla çalışan bir döngüm var, serverda link değişince if'e düşüp linki yazdıracak. Sonra tekrar ife düşmemesi için yeniLink adındaki değişkene linki eşitlemek istiyorum.
    Aşağıda gördüğünüz yeniLink'i link'e eşitlemek istiyorum fakat eşitleyemiyorum.

    String yeniLink = " ";
    Timer myTimer = new Timer();
    engine.load(link);
    TimerTask gorev = new TimerTask() {
    @Override
    public void run() {
    try {
    String link = selam.deneme();
    System.out.println("calisti " + link);
    if (!yeniLink.equals(link)) {
                    System.out.println("yeni link " + link);
    yeniLink = link;
     }
    } catch (Exception e) {
    }
    }
    };
    myTimer.schedule(gorev, 0, 3000);
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    JPriest
    JPriest's avatar
    Kayıt Tarihi: 09/Mart/2007
    Erkek

    Başlıkta "Child classtan parent classa değer atama" demişsin ama aslında derdin tam olarak o değil. Bütün işlemler aynı class içinde olup bitiyor :)

    Cevaba gelecek olursak da, TimerTask'in içindeki run metodunun içinde, dışarıda tanımlanmış bir değişkenin değerini değiştirmeye çalışıyorsun. Java maalesef buna izin vermez, kızar. Dilersen şöyle bir şey deneyebilirsin:

    yenilink değişkenini global değişken olarak metodun dışında tanımla, getter ve setter metodlarını ekle.

    yeniLink = link; satırını da bununla değiştir: setYeniLink(link);

    	private String yeniLink = "";
    	
    	public String getYeniLink() {
    		return yeniLink;
    	}
    
    	public void setYeniLink(String yeniLink) {
    		this.yeniLink = yeniLink;
    	}
    ...
    ...
    ...
    
              setYeniLink(link);

    Çalışacaktır.


    Sen hiç kaval çaldın mı?
Toplam Hit: 2104 Toplam Mesaj: 2
java javafx class