Mirage Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Aşağıdaki kod parçasında bir hata görüyor musunuz? Görüyorsanız nedir? public class A { public A() { print(); } public void print() { System.out.println("A initialized."); } } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Financial Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 printin parantez içi boş not: java bilmiyorum void printClassName(Object obj) { System.out.println("The class of " + obj + " is " + obj.getClass().getName()); } diye bişey gördüm ordan uydurdum Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Brigand Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Mirage said: Aşağıdaki kod parçasında bir hata görüyor musunuz? Görüyorsanız nedir? public class A { public A() { print(); } public void print() { System.out.println("A initialized."); } } C bilgisi ile konuşayım A() fonksiyonunun return type'ı yok. Bu default return type kullanılmasına neden olabilir ki muhtemelen int olması gerekiyor (C'de öyle en azından), return type'ı int olunca da return edilen birşey yok. ona da void desen? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kojiroh Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Constructor değil mi o? Edit: Şu print() metodunun içinde parantez içinde ama strin tanımlamasının dışında ; kullanılmış, "...";); olmuş. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Financial, parametresiz metod tanımlamakta sorun yok. Brigand, Kojiroh'un dediği gibi, constructor olduğu için return type'ı yok. Kojiroh, anlamadığım dediğini. ; sadece satırın sonunda var? Bu arada not düşeyim: Sorum daha çok Java ve OOP konusunda iyi tecrübesi olanlara yönelik. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Ceday Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 nası bi hata ? :) edit: kodsal bi hata yok ama, private yapman lazım mantıken. print methodunun cagrılması dısardan sacma olur. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kojiroh Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Yazı editlendi sanırım. Ben baktığımda şu şekilde görünüyodu o metod: public void print() { System.out.println("A initialized.";); } Smiley vardı orda yani. Smileyleri özellikle kapatmadım bu mesajda da, yazımı alıntı edip bakabilirsiniz. Edit: Bu arada şey dikkatimi çekti. Java'da import olaylarına çok hakim değilim o yüzden C++'taki "using namespace blabla" görevi gören bi şey var mı bilemiyorum da, System.out namespace'inde bi print() metodu daha olması lazım. Constructor içinde direkt "print()" metodu çağırmak çakışmaya yol açabilir mi acaba? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kharon Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 merak ettim nedir hadise acikcasi. benimde onemli olan katilmakti temali cevabim ceday inkiyle ayni, public private olmali. onun disinda problem nedir merak icinde beklemedeyim. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Ceday, en mantıklı tepki senden gelmiş. Ama kodu yazan kişi print metodunun dışardan çağrılmasını istemiş, o yüzden public. Orda bir hata yok. Kojiroh, ilk mesajda sorun yok da yukarda quote'lanan mesajlarda öyle gözüküyor haklısın. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Ceday Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 hata o deiilse hata yok o zaman :) A a = new A(); a.print(); bu iki kere initialized yazacak. öle hatalar aramaya baslarsan classın adı nie A die sorarlar o zaman adama :p Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 error mi veriyo ki kod? noluyo Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kojiroh Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 O zaman salliyim ben biraz :P Bu public A classı, A.java içinde mi tanımlanmış? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
El-Barto Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Daha initiliaze bitmeden initiliazed demişmi oluyo? :D Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 :) Ceday, o yazdığında sonuna kadar haklısın. Şu şekilde değiştiriyorum o zaman kodu izninizle. :) public class A { public A() { print(); } public void print() { System.out.println("A"); } } Bir de ekleme yapayım, kodda doğrudan bir hata yok aslında. Hatasız compile edebilirsiniz ve yine hatasız a nesneleri oluşturup kullanabilirsiniz. Potansiyel bir hata var diyelim. Bulana şeker vercem. :) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Financial Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 print fonksyonu çağırılmadan önce tanımlanmalıydı mı Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Ceday Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 o zaman instance üzerinden herhangi bi bilgi kullanmadıgı icin static yapman daha mantıklı :)) ha bi de şöle bişi olabilir. A yı extend eden bir class yaparsan, print metodunu override etmedikce A yazar. fazla zorlama baska bişi cıkmaz mirage eheh Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Ceday said: A yı extend eden bir class yaparsan doğru yoldasın... Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Ceday Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 ahah. abi işte, interface yapcan o zaman print icin. böle sorunca anlasılmıo ki :) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
fizban Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 A'yı extend eden B yaratıldıkça ekrana A bastıracak bu, kötü kaka. ceday yazmış önce, kaybettik tüh. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 ben daha iki ders java gordum, hicbisey anlamadim asdfasd. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Sorun o değil ama. Kodu mümkün olduğunca basit tutmak için kısa yazmaya çalıştım. O yüzden mantıksız gelen taraflar oldu tabi biraz. Alın madem instance değişkeni kullansın diyosanız: public class A { private int n; public A(int n) { this.n = n; print(); } public void print() { System.out.println(n); } } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Hatta daha karıştırmak yerine daha basite indirgeyelim: public class A { public A() { foo(); } public void foo() {} } Aynı potansiyel sorun burda da var. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kojiroh Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 Valla ben hep print() metodunun çağrılmasında takılıp duruyorum. A'yı extend eden B classında constructor metodu override edilmediği takdirde, B'den bi object yaratırsak hangi print() çağrılır ki? Açıkçası ben her halükarda this'leri yerleştirdiğim için bilemedim :P Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 30, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 30, 2010 Constructor override edilemez zaten. Her class kendi constructor'unu tanımlamak zorunda. Bir class'ı extend ettiysen kendi constructor'unun ilk satırında üst class'ının constructor'larından birini çağırmak zorundasın. Hiç constructor tanımlamazsan compiler otomatik olarak parametresiz boş gövdeli constructor oluşturur. İlk satırında da üst class'ın parametresiz constructor'unu çağırır. Eğer üst class'ın parametresiz constructor'u yoksa compile hatası alırsın zaten. O zaman kendin constructor tanımlayıp super constructor'unu explicit çağırmak zorundasın. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
sigisMoNd Mesaj tarihi: Ocak 30, 2010 Paylaş Mesaj tarihi: Ocak 30, 2010 typparameter mi lazim generics acisindan falan? istedigin yanlis acisindan tamamen alakasiz da olabilir dedigim Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar