1 Mart 2007

Java ile Bir Text Dosyanin Icerigini Okumak

Burada try-catch blogu kullanarak olasi hatalara karsi programi korumus oluyoruz. Eger dosya ile ilgili bir sorun cikarsa, konsola file not found yazacak. Ayrica import java.io.*; eklemeyi unutmayin.

public static void main(String[] args) throws IOException
{
FileInputStream zfile;
try {
zfile = new FileInputStream("c:\\deneme.txt");
} catch(FileNotFoundException e) {
System.out.println("File Not Found");
return;
}
while (zfile.available()>0) {
System.out.print((char) zfile.read());
}
zfile.close();
}

Java ile Konsoldan Bilgi Girdisi Saglamak

Javada bu isi yapmak icin bir komut yok, streamlari kullanarak bir yontemde siz gelistirebilirsiniz. Asagidaki kodun calismasi icin import java.io.*; satirinin eklenmesi gerekiyor.

public static void main(String[] args)
throws IOException
{
char zc;
BufferedReader zbr = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Giris Yapiniz (^-cikis) : ");
do {
zc=(char) zbr.read();
} while(zc!='^');
}
}

27 Şubat 2007

Java ile extends kullanımı

Extends bir sınıfın bütün elemanlarına nesne oluşturmadan direk erişim amacıyla kullanılıyor. Aşağıdaki örnekte Matematik sınıfı iki sayı arasında 4 işlem yapan metotlara sahip. Matematik2 sınıfı ise extends Matematik ile, Matematik sınıfının tüm metotlarını içine alıyor ve birde 3 sayı arasında toplam yapan metot tanımlıyor. Sonuç olarak Matematik sınıfının tüm metotlarını kullanmak için (tabiki erişim kontrolüne göre) Matematik2 sınıfında bir nesne oluşturmam yeterli.

public class MatematikTest extends Matematik {
// deneme icin kullanacagim main metodu
public static void main(String args[]) {
// deneme icin iki tane nesne bir Matematik digeri Matematik2
Matematik MatTest = new Matematik();
Matematik2 MatTest2 = new Matematik2();
// Bolme Yaptiriyorum 1. version
System.out.println(MatTest.Bolum(10,1));
// Toplama 1. version
System.out.println(MatTest2.Toplam(1,2));
// Toplama 2. version (Buraya dikkat!)
System.out.println(MatTest2.Toplam(1,1,2));
// Carpma 1. version
System.out.println(MatTest2.Carpim(5,6));
// Carpma 1. version
System.out.println(MatTest.Carpim(1,9));
}
}
// once iki sayi arasinda 4 islem yapan bir sinif olusturuyorum.
class Matematik {
public int Toplam(int sayi1,int sayi2) {
return (sayi1+sayi2);
}
public int Fark(int sayi1,int sayi2) {
return (sayi1-sayi2);
}
public int Carpim(int sayi1,int sayi2) {
return (sayi1*sayi2);
}
public float Bolum(float sayi1,float sayi2) {
if(sayi2>0) {
return (sayi1/sayi2);
} else {
return 0;
}
}
}
// 3 sayi arasinda toplama islemi yapan bir sinif olusturuyorum.
// bu sinif extends'i Matematik sinifi
class Matematik2 extends Matematik {
public int Toplam(int sayi1,int sayi2,int sayi3) {
return (sayi1+sayi2+sayi3);
}
}