Java’da Görsel Uygulamalar

// Input Dialog ve Mesaj Diyalog ekranlarını görmek için

// swing JOptionPane Eklenmeli.

import javax.swing.JOptionPane;

class ana_class{
public static void main(String args[]){

String ilksayi = JOptionPane.showInputDialog("Ilk Sayiyi Girin");
String ikincisayi = JOptionPane.showInputDialog("Ikinci Sayiyi Girin");

int numara1 = Integer.parseInt(ilksayi);
int numara2 = Integer.parseInt(ikincisayi);
int topla = numara1 + numara2;
//1.deger ekran üzerindeki konumu null ekranın ortası
JOptionPane.showMessageDialog(null,"Toplam sonucu " + topla, " Baslik Yazisi", JOptionPane.PLAIN_MESSAGE);

}
}

 

Java’da Kalıtıma Giriş

public class ana_class {
public static void main(String[] args) {

kedi tekir = new kedi();
kopek comar = new kopek();

tekir.yeme();
comar.yeme();

}
}

—-

//Java'da kalıtım extends kelimesi ile belirlenir. (Kim kimin inheretancesi onu belirle.)

public class gida {
public void yeme() {
System.out.println("Ben Yeme Methoduyum");
}
}

// Kedi ve kopek isimli classların kendi içerisinde yeme methodu olmasada gida isimli methodu kalıtım olarak devir aldıklarından.

// yeme isimli gida classı içerisindeki methoda erişip kullanabilirler.

public class kopek extends gida{

}

public class kedi extends gida{

}

Örnek 2. Kısım

//Override ettme. kopek isimli classın içerisine yeme isimli method aşağıdaki şekilde yazılırsa ve örnek çalıştırılırsa.

public class kopek extends gida{
public void yeme() {
System.out.println("Ben kopek isimli classın Yeme Methoduyum.");
}
}

// kopek isimli class içerisinde bulunan yeme isimli method çalışacaktır. gida içerisindeki yeme methodu kopek classı için çalışmaz ama kedi classı

// içerisinde ek bir yeme methodu yazmadığımız için kedi classı için  gida classı içerisinde bulunan yeme isimli method çalışacaktır.

//Bu durum javada override etme olarak adlandırılmaktadır. Overload ile çok farklı bir konudur.

 

Java’da Final Kullanımı

public class ana_class {
public static void main(String[] args) {

diger digerObject = new diger(10);

for(int i=0; i<5;i++){
digerObject.add();
System.out.printf("%s", digerObject);

}
}
}

public class diger{
private int toplam;
private final int SAYI;  // FINAL Değişşkenler Java'da buyuk yazılır. Yazım Sekli küçük olsada çalışır.

public diger(int x){
SAYI =x;
}
public void add(){
toplam +=SAYI;
// SAYI = 20; YAZARSAK HATA ALIRIZ ÇÜNKÜ Final olarak tanımlandığından ilk aldığı değeri bir daha değiştiremeyiz.
}
public String toString(){
return String.format("toplam = %d\n", toplam);

}

}

 

Java’da Detaylı Statik Kullanımı

import java.util.EnumSet;

public class ana_class {
public static void main(String[] args) {

diger uye1 = new diger("Ahmet","Demir");
diger uye2 = new diger("Murat","Bakir");
diger uye3 = new diger("Hasan","Kalay");

System.out.println();
System.out.println(uye1.getIlk());
System.out.println(uye1.getSon());
System.out.println(uye1.getUyeler());
// Statik oldugundan class icerisindeki methodun bilgisini getirir.
System.out.println(diger.getUyeler());

}
}

public class diger {

private String ilk;
private String son;
private static int uyeler = 0;
public diger(String i, String s){
ilk =i;
son =s;
uyeler++;
System.out.printf("Kulupteki uyeler %s %s, : %d\n",i,s,uyeler);
}
public String getIlk(){
return ilk;
}
public String getSon(){
return son;
}
public static int getUyeler(){
return uyeler;
}

}

 

Java’da Statik Kullanımı

public class ana_class {
public static void main(String[] args) {

diger uye1 = new diger("Ahmet","Demir");
diger uye2 = new diger("Murat","Demir");
diger uye3 = new diger("Hasan","Demir");

}
}

public class diger {

private String ilk;
private String son;
private static int uyeler = 0;

public diger(String i, String s){
ilk =i;
son =s;
uyeler++;
System.out.printf("Kulupteki uyeler %s %s, : %d\n",i,s,uyeler);
}

}

 

Java’da EnumSet

// Belli bir araliktaki verileri alma

import java.util.EnumSet;

public class ana_class {

public static void main(String[] args) {
for(diger insanlar: diger.values())
System.out.printf("%s\t%s\t%s\n", insanlar,insanlar.getDesc(),insanlar.getYear());

System.out.println("\n And now for the range of constans!!!\n");

// Dizi içerisinde nereden nereye kadar olanı almak istiyoruz onuda belirleyebiliriz.
for(diger insanlar: EnumSet.range(diger.hayriye, diger.hasan))
System.out.printf("%s\t%s\t%s\n", insanlar,insanlar.getDesc(),insanlar.getYear());
}

}


// Enum Sabit degerleri temsil etmek icin javada kullanilir.
// enum içindeki verileri
// java otomatik olarak dizi olacak şekilde yapıyı değiştirecektir.
// veri guvenirligi ve kod okunakligi icin kullanilir.
// sabit bilgi yazimi haftanin gunleri gibi yapilarda fazlasiyla kullanilmaktadir.
public enum diger {
ayse("iyi", "22"),
fatma("sevimli", "25"),
hayriye("bu kim", "27"),
ahmet("italian", "13"),
hasan("different", "14");

private final String desc;
private final String year;

diger(String description, String birthday){
desc = description;
year = birthday;
}
public String getDesc(){
return desc;
}
public String getYear(){
return year;
}
}

 

Java’da Enum Kullanımı

public class ana_class {

public static void main(String[] args) {
for(diger insanlar: diger.values())
System.out.printf("%s\t%s\t%s\n", insanlar,insanlar.getDesc(),insanlar.getYear());

}

}

// Enum Sabit degerleri temsil etmek icin javada kullanilir.
// enum içindeki verileri
// java otomatik olarak dizi olacak şekilde yapıyı değiştirecektir.
// veri guvenirligi ve kod okunakligi icin kullanilir.
// sabit bilgi yazimi haftanin gunleri gibi yapilarda fazlasiyla kullanilmaktadir.
public enum diger {
ayse("iyi", "22"),
fatma("sevimli", "25"),
hayriye("bu kim", "27");

private final String desc;
private final String year;

diger(String description, String birthday){
desc = description;
year = birthday;
}
public String getDesc(){
return desc;
}
public String getYear(){
return year;
}
}

 

Obje için obje Kullanımı

// Composition obje içerisine başka bir obje ile string bir değeri bir arada verme.
// Ana Class
class ana_class{
public static void main(String args[]){
zaman zamObject  = new zaman(4,5,6);
diger bizimObject = new diger("Ahmet", zamObject);
System.out.println(bizimObject);
}
}

public class diger {
private String ad;
private zaman dogumgunu;

public diger(String Adi, zaman Tarihi){
ad = Adi;
dogumgunu = Tarihi;
}
public String toString(){
return String.format("Benim adım %s, doğum günüm ise %s", ad, dogumgunu);
}
}

// Zaman classinin kodlari
public class zaman {
private int ay;
private int gun;
private int yil;

public zaman(int a, int g, int y){
ay = a;
gun =g;
yil = y;
System.out.printf("This icin constractor %s\n",this);
}
public String toString(){
return String.format("%d/%d/%d", gun,ay,yil);
}

}

 

Java’da toString() Methodu Kullanımı

class ana_class{
public static void main(String args[]){
zaman zamObject  = new zaman(4,5,6);
}
}

// Zaman class'ında print içerinde this dendiği için o anda çalışan objeyi gösterir

// %s dendiği için toStrig otomatik olarak formatı algılar ve ekrana yazar.

public class zaman {
private int ay;
private int gun;
private int yil;

public zaman (int a, int g, int y){
ay = a;
gun = g;
yil = y;
System.out.printf("This için constractor %s\n",this);
}
public String toString(){
return String.format("%d/%d/%d", gun,ay,yil);
}

}

}

 

Java’da Constractor Kullanımı

// Constroctor (yapıcı veya inşaatcı olarak Türkçeleştirilmiştir.) özel tipte bir methodtur.
// class içerisinde tanımlanır geri dönüş değeri yoktur.

class insan{
  int boy;
  int kilo;
  int yas;
  // aşağıdaki public insan() bir constructerdır ve ilk değerleri atamak için genellikle kullanılır.
  public insan(){ //class ile aynı isme sahip ve return typeı yoktur.
    System.out.print("Çalışır");
    yas = 1;
  }
  // polimorfizimle aynı isimde birden fazla constractor çalıştırılabilir.
  public insan(int yas,int kilo,int boy){	
    // this o classın demektir.
    // this(); dersek javada ilk olan çalıştır olacağı için yukarıdaki insan() constractor çalışır.
    this.yas = yas;
    this.kilo = kilo;
    this.boy = boy;
  }
}

public class Main {

  public static void main(String[] args) {
    // insan veli;
    insan veli = new insan(20,80,170);
    insan ali = new insan(); //default constructor parametresiz olanı çalıştır.
    ali.boy = 180;
    ali.kilo = 80;
    System.out.println(" \n Alinin özellikleri \n Alinin boyu " + ali.boy + "Alinin Kilosu " + ali.kilo);
    System.out.println(" \n Velinin özellikleri \n Velinin boyu " + veli.boy + "Alinin Kilosu " + veli.kilo);
    // new insan(); çöp değer tanımı
    // System.gc(); diye biliriz. Çöp değerleri toplamak için kullanılır. Özel durumlarda bu çöp değerini toplama ihtiyacı olabilir.
    
  }

}