Direk örnek üzerinden gidelim. Elinizde 2G bir telefon var internete gir dediğimiz zaman 2G standardlarını kullanarak bir işlem yapıyor. Yarın geldik dedik ki yeni bir telefon yapalım bu da 3G olsun. 2G li telefonu olduğu gibi alalım. Sonra internete girme işlemi varya onu artık 3G standardlarına göre yapsın. O kısmını değiştirelim. Tam bu değiştirme işleminde 2G'nin yaptığı işlemleri ezip yerine 3G işlemleri koyduğumuz işleme overriding deniyor. Yani koda dökelim
public class Telefon {
public void baglan() {
System.out.print("2G ile bağlanıyorum");
}
....
}
public class Telefon3G extends Telefon {
public void baglan(){ // overriding
System.out.print("3G yayında");
}
.....
}
...
Telefon t3 = new Telefon3G()
Telefon t2 = new Telefon()
t3.baglan() // sonuc = 2G ile bağlanıyorum
t2.baglan() // sonuc = 3G yayında
Bu şekilde 3G olan t3 ile 2G olan t2 farklı şekillerde bağlantılarını kurmaktadırlar.