17 Şubat 2014 Pazartesi

Java Parametresiz Metod Kullanımı

Aşağıdaki kodlar kullanıcıya konsol ortamında ismini sorar ve klavyeden girilen kelimeyi yine konsol ortamında yazdırır. Program sadece tek bir class'tan oluşmaktadır. Program başlatıldığında "isim" adında String türünden bir değişken oluşturulur. Bu değişkene "isimGir()" adlı parametresiz bir metodun döndürdüğü değer atanır ve sonuç konsol ortamında yazdırılır.

isimGir() metodu kendi bünyesinde "adi" isimli String türünden bir değişken oluşturur. Sonra Scanner sınıfından "yazi" adlı bir nesne oluşturur ve bu nesne ile klavyeden girilen değerleri nextLine() metodu ile okutarak "adi" değişkenine aktarır. "adi" değişkeninin taşıdığı değer return komutu ile isimGir() metodunun çağırıldığı yere gider ve "isim değişkenine atanır. Son olarak "isim" değişkeninin değeri konsol ortamında ekrana basılır.

Program gördüğünüz gibi oldukça basit ama Java Programlamaya Yeni Başlayanlar için faydalı olacağını düşünüyorum. İşte yukarıda bahsettiğimiz programın nacizane kodları.

anaSinif.java

import java.util.Scanner;
public class anaSinif {
    public static void main(String args[]){
        String isim;
        isim=isimGir();
        System.out.println("Adınız : "+isim);
           
    }
    public static String isimGir(){
        String adi;
        Scanner yazi = new Scanner(System.in);
      System.out.println("Lütfen bir isim giriniz");   
      return adi=yazi.nextLine();
    }
}

24 Aralık 2013 Salı

Java Inheritance(Kalıtım) Uygulaması (Java extends Örneği)


Daha önce katıldığım java programlama kursunda yaptığımız bir (inheritance)kalıtım uygulaması. Programda tanımlanan tüm classlar personel sınıfından extends komutu ile türetilmiştir.

personel.java

import java.util.Locale;

public class personel {
    protected String ad;
    protected String soyad;
    public String tcKimlik;
    private Double sabitMaas=0.0;
   
    public personel(){
       
    }// defalut constructor
    public personel(String persAd,String persSoyad,double persMaas){
        ad=persAd;
        soyad=persSoyad;
        sabitMaas=persMaas;
        }
    public void setAd(String personelAd)// isim formatı:
    {// ad parametresinin sağındaki ve solundaki boşlukları alıp isim StringBuilder nesnesine ata.
        StringBuilder isim = new StringBuilder(personelAd.trim());
        if(isim.length()==0){// eğer isim nesnesinin uzunluğu 0 ise boş isim girilmiştir.
            System.out.println("Ad kısmı boş. Lütfen bir isim giriniz");
            }else{// isim nesnesinin ilk harfi büyük diğerleri küçük olarak şekillendir.
                for(int i=0;i<isim.length();i++){
                    if(i==0) isim.setCharAt(i, Character.toUpperCase(isim.charAt(i)));                   
                    }//for döngüsü sonu
                this.ad=isim.toString();
            }//else sonu
       
    }//setAd metod sonu
    public String getAd(){return this.ad;}
    public void setSoyad(String personelSoyad){
        personelSoyad=personelSoyad.trim();
        if(personelSoyad.length()==0){//soyad kısmının boş olup olmadığı kontrol ediliyor
            System.out.println("Soyad kısmı boş. Lütfen personel soyadını yazınız.");
        }else{// soyisim nesnesinin tümü büyük harf olacak
            this.soyad=personelSoyad.toUpperCase(new Locale("TR"));
        }//else sonu
    }
    public String getSoyad(){
        return soyad;
    }// getSoyad sonu
    final public void setTcKimlik(String tckimlik){
        this.tcKimlik=tckimlik;
    }
    public void setMaas(double maas){
        sabitMaas=maas;
    }
    public double getMaas(){return sabitMaas;}
    public double hakEdis(){
        System.out.print("Personel Hakediş:");
        return sabitMaas;
    }
}// personel classs sonu



SatisPersoneli.java


public class SatisPersoneli extends personel{
    public double satisTutari;
    public double primYuzdesi;
    public SatisPersoneli(){}
    public SatisPersoneli(String ptpAd,String ptpSoyad,double satisTutari,double prim){
        super(ptpAd, ptpSoyad, 500.0);// bu stırda satış personelinin bilgileri personel class'ındaki personel isimli metoda bilgi gönderir.
        this.satisTutari=satisTutari;
        this.primYuzdesi=prim;
    }// SatisPersoneli sonu
    public void setSatistutari(){
        if(satisTutari>=0)
            this.satisTutari=satisTutari;
        else
            System.out.println("tutar pozitif olmalı");
    }// setSatistutari sonu
    @Override
    public double hakEdis(){
        System.out.println("Satıi personeli hakediş:");
        return super.getMaas()+(this.satisTutari*(1+primYuzdesi));
    }

}

PartTimePersonel.java


public class PartTimePersonel extends personel{
    public int mesaiSaat;
    public double saatUcreti;
    public PartTimePersonel(){
        super();
    }
    public PartTimePersonel(String ptpAd,String ptpSoyad, int ptpMesai, double ptpSaatUcret){
        super(ptpAd,ptpSoyad,0.0);
        this.mesaiSaat=ptpMesai;
        this.saatUcreti=ptpSaatUcret;
    }//PartTimePersonel sonu
   
    public void setMesaiSaat(int saat){
        if(saat>=0)
            mesaiSaat=saat;
        else
            System.out.println("Mesai saati pozitif olmalı");
    }
    @Override
    public double hakEdis(){
        System.out.println("Pat Time Personel hakediş :");
        return saatUcreti*mesaiSaat;
    }

}

Stajyer.java


public class Stajyer extends personel{

}

PersonelTakip.java


public class PersonelTakip {
    public static void main(String[] args){
        personel isci,partIsci,stajyerIsci;
        isci = new personel("Kamil","turhan",1000.0);
        partIsci = new PartTimePersonel("Yusuf","eren",45,20.0);
        stajyerIsci = new Stajyer();
        personel satisIsci = new SatisPersoneli("haken","kart",40000.0,0.2);
       
        System.out.println(isci.hakEdis());
        System.out.println(partIsci.hakEdis());
        System.out.println(satisIsci.hakEdis());
    }

}