Kelimesi Sınıf gelen Sınıflandırma ( A Kategori şey konduğu Şimdi hepimiz duyduk,) Sınıf bir Blueprint gibi, ama ne bu tam ortalama? Bu, Sınıfın belirli bir Kategorinin Açıklamasına sahip olduğu anlamına gelir ( Sınıf, Nesne ve Örnek arasındaki farkı Java kullanarak örnekle göstermek istiyorum ve okuyuculardan onu okurken bir Hikaye gibi görselleştirmelerini rica ediyorum. java'ya aşina değiller önemli değil ) Öyleyse , HumanBeing adlı bir Kategori oluşturarak başlayalım , böylece Java programı bunu aşağıdaki gibi ifade edecek
class HumanBeing{
/*We will slowly build this category*/
}
Şimdi bir HumanBeing'in genel olarak İsim , Yaş , Boy , Kilo olarak sahip olduğu nitelikler şimdilik benliğimizi bu dört nitelikle sınırlayalım, onu Kategorimize ekleyelim.
class HumanBeing{
private String Name;
private int Age;
private float Height;
private float Weight;
/*We still need to add methods*/
}
Şimdi her kategorinin bir davranışı vardır, örneğin Köpek kategorisi havlama, getirme, yuvarlanma vb ... gibi bir davranışa sahiptir. Benzer şekilde, İnsanBeing kategorimiz de belirli davranışlara sahip olabilir, örneğin HumanBeing'e adınız / yaşınız / kilonuzun ne olduğunu sorduğumuzda yükseklik? Bize adını / yaşını / kilosunu / boyunu vermeli, bu yüzden java'da bunu aşağıdaki gibi yapıyoruz
class HumanBeing{
private String Name;
private int Age;
private float Height;
private float Weight;
public HumanBeing(String Name,int Age,float Height,float Weight){
this.Name = Name;
this.Age = Age;
this.Height = Height;
this.Weight = Weight;
}
public String getName(){
return this.Name;
}
public int getAge(){
return this.age;
}
public float getHeight(){
return this.Height;
}
public float getWeight(){
return this.Weight;
}
}
Şimdi HumanBeing kategorimize davranış ekledik , böylece adını, yaşını, boyunu, kilosunu sorabiliriz, ancak bu ayrıntıları kimden soracaksınız, çünkü class HumanBeing
sadece bir kategori, bu bir plandır, örneğin bir Mimar bir plan yapar. Yapmak istediği binanın bir kâğıdı, şimdi plana göre canlı olarak devam edemeyiz ( binanın tanımı ) ancak inşa edildikten sonra binada yaşayabiliriz. Bu yüzden burada bizim kategorimizden bir insan yapmalıyız ki bu yukarıda anlattık, peki bunu Java'da nasıl yapıyoruz
class Birth{
public static void main(String [] args){
HumanBeing firstHuman = new HumanBeing("Adam",25,6.2,90);
}
}
Şimdi yukarıdaki örnekte yaş boy kilo adıyla ilk insanımızı yarattık, öyleyse yukarıdaki kodda tam olarak ne oluyor? . Biz edilir başlatmasını bizim kategori humanbeing bizim sınıf oluşturulduğunda yani bir Object
Not: Nesne ve Örnek Eşanlamlı Değil Bazı durumlarda Nesne ve Örnek Eşanlamlı gibi görünür ancak bunlar değildir, her iki durumu da vereceğim
Durum 1: Nesne ve Örnek Eşanlamlılar gibi görünüyor Kategorimizin bir Nesnesi yığın hafızasında yaratıldığını ve ona bir adres tahsis edildiğini ve bu adrese bir referans tuttuğunu
söylediğimizde biraz detaylandırmama izin verin , şimdi bu Object İnsan Varlığının Bir Nesnesi ve ayrıca Bir İnsan Varlığı Örneği . Burada Nesneler ve Örne Eşanlamlı gibi görünüyor, kendimi tekrar edeceğim , eşanlamlı değillerHumanBeing firstHuman = new HumanBeing("Adam",25,6.2,90);
firstHuman
Hikayemize Devam Edelim, İlk İnsanımızı yarattık, şimdi onun adını, yaşını, boyunu, kilosunu sorabiliriz, Java'da böyle yapıyoruz
class Birth{
public static void main(String [] args){
HumanBeing firstHuman = new HumanBeing("Adam",25,6.2,90);
System.out.println(firstHuman.getName());
System.out.println(firstHuman.getAge());
...
...
}
}
bu yüzden ilk insana sahibiz ve ilk insanlığımıza bir nitelik kazandırarak tüyleri hareket ettirelim, hadi onu Doktor yapalım, bu yüzden Doktor adında bir kategoriye ihtiyacımız var ve Doktorumuza biraz davranış vermeliyiz, bu yüzden java'da aşağıdaki gibi yapıyoruz
class Doctor extends HumanBeing{
public Doctor(String Name,int Age,float Height,float Weight){
super(Name,Age,Height,Weight);
}
public void doOperation(){
/* Do some Operation*/
}
public void doConsultation(){
/* Do so Consultation*/
}
}
Burada , kodda bir miktar yeniden kullanılabilirlik getiren Kalıtım kavramını kullandık , Her Doktor her zaman önce bir İnsan Olacaktır, bu nedenle Bir Doktor, yeniden yazmak yerine İnsanBeing'den Miras alınacak Adı, Yaşı, Ağırlığı, Boyu olacaktır. Henüz yaratmadığımız bir doktorun açıklamasını yazdığımıza dikkat edin, bu yüzden doktorumuzda oluşturalım.class Birth
class Birth{
public static void main(String [] args){
Doctor firstDoctor = new Doctor("Strange",40,6,80);
.......
.......
/*Assume some method calls , use of behaviour*/
.......
.......
}
}
Durum 2: Nesne ve Örnek Eşanlamlı Değildir
Yukarıdaki kodda, Doktor kategorimizi Örneklendirdiğimizi ve onu hayata geçirdiğimizi görselleştirebiliriz, yani sadece Doktor kategorisinin bir Nesnesini oluşturuyoruz , Bildiğimiz gibi Nesnenin Yığın Belleğinde oluşturulduğunu biliyoruz. ve firstDoctor
yığın üzerinde bu Nesneye bir referans tutar;
Bu özel Nesne firstDoctor
aşağıdaki gibidir (lütfen firstDoctor
nesneye bir referans içerdiğini unutmayın, nesnenin kendisi değildir)
firstDoctor
olduğu bir nesneclass Doctor
Ve A örneğineclass Doctor
firstDoctor
olduğu Değil bir nesneclass HumanBeing
Ama bir örneğiniclass HumanBeing
Dolayısıyla, belirli bir Nesne, belirli bir sınıfın bir örneği olabilir, ancak belirli bir sınıfın nesnesi olması gerekmez
Sonuç:
Bir Nesnenin, belirli bir Kategorinin tüm özelliklerini karşılıyorsa, belirli bir Kategorinin Örneği olduğu söylenir
Gerçek dünya örneği şu şekilde olacak, ilk önce İnsan olarak doğuyoruz, bu yüzden bizi İnsanın Nesnesi olarak hayal edin, şimdi büyüdüğümüzde sorumluluklar alıyoruz ve yeni beceriler öğreniyoruz ve yaşamda farklı roller oynuyoruz. , anne şimdi biz aslında neyiz biz İnsan Nesnesi olduğumuzu söyleyebiliriz Ama Kardeş, kız, vb.
Umarım bu yardımcı olur
Teşekkür ederim