• Sonuç bulunamadı

ile Nesne Yönelimli Programlama

N/A
N/A
Protected

Academic year: 2022

Share "ile Nesne Yönelimli Programlama"

Copied!
15
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

ile Nesne Yönelimli Programlama

14 İstisnalar(Exceptions)

(2)

İçerik

▪ İstisnalar(Exceptions)

▪ Try-Catch-Finally Kullanımı

▪ Throw ile Hata Fırlatılması

(3)

İstisnalar

public class Islem {

public static void main(String[] args) { int a,b,c;

a=5;

b=0;

c=a/b;

} }

(4)

İstisnalar(Exceptions)

public class Islem {

public static void main(String[] args) { int a,b,c;

try { a=5;

b=0;

c=a/b;

}catch (Exception e) {

System.out.println("Bir hata oluştu =>"+e.toString());

}

(5)

Finally (Hata olsa da olmasa da çalışır)

public class Islem {

public static void main(String[] args) { int a,b,c;

try { a=5;

b=0;

c=a/b;

}catch (Exception e) {

System.out.println("Bir hata oluştu =>"+e.toString());

}finally {

System.out.println("Program sonlandı");

}

(6)

Dizi Sınırı Aşılması (ArrayIndexOutOfBound)

public class Istisnalar {

public static void main(String[] args) { int[] a= {1,3,5,7,9};

System.out.println(a[5]);

} }

(7)

Dizi Sınırı Aşılması (ArrayIndexOutOfBound)

public class Istisnalar {

public static void main(String[] args) { try {

int[] a= {1,3,5,7,9};

System.out.println(a[5]);

}catch(Exception e) {

System.out.println("Bir hata oluştu =>"+e.toString());

}finally {

System.out.println("Program sonlandı");

} } }

(8)

Throw ile Hata Mesajı Fırlatılması

import java.util.Scanner;

public class AritmetikIslem {

static boolean notKontrol(double x) { return(x>=0 && x<=100);

}

public static void main(String[] args) { Scanner giris=new Scanner(System.in);

System.out.print("Not giriniz:");

double not = giris.nextDouble();

if(!notKontrol(not))

(9)

Rastgele Sayı Üretme

import java.util.Random;

public class SayiUret {

public static void main(String[] args) { Random rand = new Random();

for(int i=0;i<10;i++) {

double sayi = rand.nextDouble();

System.out.println(sayi);

} }

}

sayi=Math.round(sayi*100.0)/100.0;

(10)

Rastgele Sayı Üretme

import java.util.Random;

public class SayiUret {

public static void main(String[] args) { Random rand = new Random();

//1 ile 49 arasında 6 sayı üretiniz for(int i=1;i<=6;i++) {

int s1= rand.nextInt(49)+1;

System.out.println(s1);

} }

(11)

Ratsgele Not Üretip Ortalamasını Bulma

import java.util.Random;

public class NotUretme {

public static void main(String[] args) { int rnot;

double ortalama=0, toplam=0;

Random rastgele = new Random();

for(int i=1;i<=20;i++) {

rnot =rastgele.nextInt(100)+1;

toplam+=rnot;

System.out.println(rnot);

}

ortalama=toplam/20;

System.out.println("Ortalama="+ortalama);

//Soru: Ortalamanın altında üretilen

(12)

Dosyaya Yazma

import java.io.FileWriter;

import java.io.IOException;

public class DosyaIslemleri {

public static void main(String[] args) throws IOException { String sehir="İstanbul";

FileWriter dosya=new FileWriter("cikis.txt");

for (int i = 0; i < sehir.length(); i++) dosya.write(sehir.charAt(i));

(13)

Dosyadan Okuma

import java.io.*;

public class DosyaIslemleri {

public static void main(String[] args) throws IOException { int ch;

FileReader dosya=null;

try {

dosya = new FileReader("cikis.txt");

}

catch (FileNotFoundException fe) {

System.out.println("Dosya bulunumadı");

}

// Dosya sonuna kadar oku while ((ch=dosya.read())!=-1)

System.out.print((char)ch);

(14)

Kaynaklar

Oracle Exceptions,

https://docs.oracle.com/javase/tutorial/essential/exceptions/

How to Java, «Deitel & Deitel», Pearson Yayınevi.

(15)

Sorularınız

Dinlediğiniz için teşekkür ederim.

Referanslar

Benzer Belgeler

 Fonksiyon başlık tanımındaki dizi değişkeni ile gönderilen dizi elemanlarının türü aynı olmalıdır.  Diziler referanslı olarak çağrılan fonksiyonlara

 friendly türünde erişim belirleyicisine sahip olan global alanlar (statik veya değil) içerisinde bulundukları paketin diğer sınıfları tarafından erişilebilirler.. 

 Yeni türetilen sınıf, türetildiği sınıfın global alanlarına ve yordamlarına (statik olsa dahi) otomatik olarak sahip olur (private olanlara doğrudan erişim yapamaz.)..

 Soyut bir sınıftan türetilmiş alt sınıflara ait nesneler, bu soyut sınıf tipindeki referanslara bağlanabilirler (upcasting).  Böylece polimorfizm ve geç

 statik dahili üye sınıf içerisindeki statik bir yordamı çağırmak için ne statik dahili üye sınıfına ne de onu çevreleyen sınıfa ait nesne oluşturmak gerekmez.

 Tüm istisnaları yakalamak (Error, RuntimeException ve diğer Exception türleri) için Throwable istisna tipi kullanılabilir.  Ancak, oluşabilecek istisnalar için bu üç

This paper presents a 3D scanner for transparent glass objects based on Scanning From Heating (SFH), a new method that makes use of local surface heating and thermal imaging..

Uygulamaya bağlı olarak, kullanıcı yüksek hassasi- yetli detay doğruluğunun dolayısıyla daha yüksek veri yoğun- luğunun gerekli olup olmadığına veya daha düşük ayrıntı