Java SE Ders24 - Composition (Kompozisyon)


   Composition (Kompozisyon) bir sınıf içerisinde başka bir sınıfın nesnesini oluşturma durumudur. Composition (Kompozisyon) kalıtıma (inheritance) alternatif olarak kullanılır. Sınıflar kalıtımda olduğu gibi hiyerarşik bir yapıda bulunmaz. Composition birleşim olarak da adlandırılır.

Şimdi örnek programı yapalım.

Main.java
package test;

public class Main {

 public static void main(String[] args) {
  
  EvcilHayvan e=new EvcilHayvan("kedi","rifki",5);
  Kisi k=new Kisi("enes",25,e);
  k.yazdir();

 }

}

Kisi.java
package test;

public class Kisi {
 private String ad;
 private int yas;
 private EvcilHayvan e;

 public Kisi(String ad,int yas){
  this.ad=ad;
  this.yas=yas;
 }
 
 public Kisi(String ad,int yas,EvcilHayvan e){
  this.ad=ad;
  this.yas=yas;
  this.e=e;
 }
 
 public String getAd() {
  return ad;
 }

 public void setAd(String ad) {
  this.ad = ad;
 }

 public int getYas() {
  return yas;
 }

 public void setYas(int yas) {
  this.yas = yas;
 }

 public EvcilHayvan getE() {
  return e;
 }

 public void setE(EvcilHayvan e) {
  this.e = e;
 }

 public void yazdir() {
  System.out.println("\n\nKisi\n" + "AD\t:" + ad + "\nYAS\t:" + yas + "\n-----------\n" 
             + "EvcilHayvan\n" + "TUR\t:"
    + e.getTur() + "\nAD\t:" + e.getAd() + "\nYAS\t:" + e.getYas());
 }

}

EvcilHayvan.java
package test;

public class EvcilHayvan {
 private String tur;
 private String ad;
 private int yas;

 public EvcilHayvan(String tur, String ad, int yas) {
  this.tur=tur;
  this.ad=ad;
  this.yas=yas;
 }

 public String getTur() {
  return tur;
 }

 public void setTur(String tur) {
  this.tur = tur;
 }

 public String getAd() {
  return ad;
 }

 public void setAd(String ad) {
  this.ad = ad;
 }

 public int getYas() {
  return yas;
 }

 public void setYas(int yas) {
  this.yas = yas;
 }

}

Composition (Kompozisyon)

Yorumlar

Bu blogdaki popüler yayınlar

Spring Ders20 - Aspect Oriented Programming - AspectJ Annotation Style

JSF Ders30 - Page Template (Sayfa Şablonu)