Geçtiğimiz hafta Nesneye Yönelik Programlama Dersinde ödev olarak verilen bu programı teslim ettik. Kaynak kodlarını paylaşacağım program basit bir Java Uygulamasıdır. Aslında ne kadar Personel Takip programı denilir orası da tartışılabilir 🙂 Personel Takip programlarının mantığını oluşturan bir uygulama diyelim. Uygulamamız İnsan ve Calisan olmak üzere iki sınıftan olusacak Calisan sınıfı insan sınıfından Miras alma işlemi yapacak.
İnsan Sınıfı Ve Özellikleri :
- Adı
- Soyadı
- Yaşı
Çalişan Sınıfı Özellikleri Ve Metodları :
- Maaş
- Depertman
Sınıflarımız basitçe bu verilerden oluşacaklar. Bunlara ek olarak bir takım metodlar geliştirerek ve bazı değerler bulmayı sağlayacağız. Programda bizden yapılması istenenler ise şu şekilde olacak..
- BİLGİSAYAR bölümünde çalişanların ortalama maaşını bulan metod yazılacak.
- Muhasebe Bölümünde en yüksek maaşı alan çalışanın Ad, Soyad bilgileri döndürülecek.
- Kullanıcıdan bir Soyad alınacak ve bu soyadına sahip olan kişilerin ortalama yaşları ekranda gösterilecek .
- Kullanıcıdan bir Yaş alınacak ve şirket içersinde bu yaşta kac kişi varsa onların sayısı gösterilecek .
- Şirketteki tüm çalışanların ortalama yaşını bulan metod yazılacak .
Yapılacak işlemlerde bu şekilde
Yapacağımız Programın Kaynak Kodlarını İndirmek İçin Buraya Tıklayınız.
Şimdi İnsan sınıfı oluşturalım ve insan Sınıfına ait Get,Set metodlarını ve Kuruc metodlarını oluşturalım.
/** * * @author Aytac Cici * 13 Mart 2012 Java Programlama Personel Takip Programı İçin * Yazılan İnsan Sınıfıdır. * */ public class insan { String ad; String Soyad; int yas; public insan(String ad, String Soyad, int yas) { this.ad = ad; this.Soyad = Soyad; this.yas = yas; } public insan() { } public void setSoyad(String Soyad) { this.Soyad = Soyad; } public void setAd(String ad) { this.ad = ad; } public void setYas(int yas) { this.yas = yas; } public String getSoyad() { return Soyad; } public String getAd() { return ad; } public int getYas() { return yas; } } |
Şimdi aynı şekilde Calisan sınıfı ve ona ait değişkenlerin get ve set metodlarını oluşturalım. Burada dikkat etmemiz gereken nokta Calisan Sınıfı ad,soyad,yaş gibi bilgileri İnsan sınıfından alacaktır. Yani bir miras alma söz konusu olacak. Bunları göze alakak kaynak kodlarımızı yazalım..
public class Calisan extends insan { String departman; int maas; public Calisan(String departman, int maas, String ad, String Soyad, int yas) { super(ad, Soyad, yas); this.departman = departman; this.maas = maas; } public Calisan() { } public String getDepartman() { return departman; } public int getMaas() { return maas; } public void setDepartman(String departman) { this.departman = departman; } public void setMaas(int maas) { this.maas = maas; } } |
Sınıf tanımlamaları bittiğine göre Ana programa gidebilir ve orada yapılması istenenleri yapabiliriz.
import javax.swing.JOptionPane; /** * * @author Aytac CİCİ * 13 Mart 2012 Salı // Java Programlama * Personel Takip Sistemi */ public class PersonelTakip { /** Bu kısım programımızın ana kısmı. C den bildiğimiz main kısmı olarak adlandırabiliriz. Program buradan calismaya baslar ve diğer yazdığımız metodları biz buradan cağarırız.*/ public static void main(String[] args) { String strElemanSayisi; // Sirketimizde kac kişinin calisacağını kullanıcıdan alacagımızdan bir değisken tanımlıyoruz. int elemanSayisi; // JOptionPane kullanarak string bir değer okuruz onu integer bir tam sayı değerine cevirmek için tanımkadık JOptionPane.showMessageDialog(null, "Veri Girişi Yaparken Büyük Harfler Kullanınız. Departman Adları" + "BİLGİSAYAR , MUHASEBE , vs vs dir ! Departmanı BİLGİSAYAR olanların ortalama maaşını bulmak için departman" + "kısmını BİLGİSAYAR olarak girmelisiniz"); strElemanSayisi=JOptionPane.showInputDialog("Sirketinizde Kac Eleman Calisacak "); // Kullanıcıdan Kac kişinin sirkette calisacagını okuduk elemanSayisi=Integer.parseInt(strElemanSayisi); // Girilen kullanıcı sayısının İnteger ifadeye çevirdik. Calisan[] elemanlarim= new Calisan[elemanSayisi]; /** İki adet sınıf oluşturnustuk. Bunlar insan ve calisan sınıfıydı. Calisan sınıfı insan sınıfının bir takım özelliklerini miras almaktadır. Bu yüzden Calisan tipinden bir nesne oluşturmamız gerekmektedir. Şirketimizde birden cok calisan olacagından onu dizi olarak tanımlamamız gerekemktedir. Dizi olarak tanımladık. */ int sayac=0; // Döngü içinde değerler aliyoruz ve onları sınıfımızın özelliklerine teker teker atıyoruz. while(sayacenbuyuk) // Depertman Muhasebe ve su anki döngü elemanı daha onceki enbüyük maastan büykse // Şart saglanır ve if içine girilir. { enbuyuk=eleman[i].maas; elemanIndex=i; } } return eleman[elemanIndex].ad + " " + eleman[elemanIndex].Soyad; // Bulunan en yüksek maasli elemanın adını soyadını birlestirerek ana programa döndürülür. } } |
Bu şekilde programa son vermiş oluyoruz. Ana programda yapılanları satır satır acıklamaya özen gösterdim. Başka bir ödevde veya bir makalede görüşmek dileğiyle 🙂