Object Oriented Programlama # 8 - Python Dersleri (Tutorials)

in #zzan5 years ago

object.jpg

Merhabalar

Python programlama derslerine inheritance yani kalıtım konusu ile devam ediyoruz. Bir önceki dersimizde temel bir sınıf oluşturup o sınıftan miras alan yan sınıflar oluşturmuştum.

personel sınıfımız bizim ana sınıfımızdı. ogretmen ve isci sınıfları ise personel sınıfından miras almıştı.

Bir sınıf başka bir sınıftan miras alırsa miras aldığı sınıfın tüm özellik ve metotlarını kullanabilir. Miras almak için sınıf tanımını yaparken sınıf parantezleri içerisine miras alınacak sınıfın ismini yazarız.

Bu dersimizde bir önceki derste hazırlamış olduğumuz yapıyı biraz daha geliştireceğiz. İlk olarak önceki dersimizde yazdığımız personel sınıfını verelim :

Şimdi de bloğunu boş bıraktığımız ogretmen sınıfını görelim :

ogretmen sınıfı içi boş olmasına rağmen personel sınıfındaki her özelliği ve metodu kullanabilir. ogretmen sınıfının kullanabileceği metotları, dir() fonksiyonunu kullanarak öğrenebiliriz :

Görüldüğü gibi en sondaki bilgileriGoster() ve maasArtir() metotları bizim personel sınıfında hazırlamış olduğumuz metotlardır.

ogretmen sınıfının içeriğini oluşturalım:

ogretmen sınıfının içerisine bilgileriDegistir() adında bir metot ekledim.

Aslında bu metot kullanım amacı olarak ana sınıfa daha uygun olsa da buradaki amacımız miras alan bir sınıfın içinde nasıl harici bir metot tanımlanır, görmek olduğundan bu konuya takılmayın lütfen.

Şimdi de kullanımını görelim. Bir sınıfı kullanabilmek için o sınıf türünden bir nesne oluşturmak gerekir :

ogretmenB adında bir nesne oluşturdum ve bu nesneyi oluştururken ilk değer atamalarını verdim. Kodu çalıştırdığımızda çıkan çıktıdan bu aşamada çalışan fonksiyonun personel sınıfındaki init() fonksiyonu olduğunu anlıyoruz.

init() fonksiyonu içerisine bu çıktı, kontrol amaçlı konulmuştur.

Şimdi ogretmenB nesnesinin bilgilerine bakalım. Bunun için personel sınıfından bu sınıfa gelen bilgileriGoster() metodunu kullanalım :

ogretmenB nesnesi verdiğimiz bilgilere uygun olarak oluşturulmuş. Şimdi de ogretmen sınıfında oluşturduğumuz bilgileriDegistir() metodunu kullanalım :

Bu şekilde güncel bilgileri girdiğimize göre bakalım bilgilerimiz güncellenmiş mi?

Görüldüğü gibi metot bilgileri güncelledi.

ogretmen sınıfı içerisindeki fonksiyonlara tekrardan bakalım :

Listedeki hem personel sınıfından alınan hem de kendi(ogretmen) sınıfından gelen fonksiyonlar gözükmektedir.

Şimdilik bu kadar.

Umarım faydalı bir çalışma olmuştur.

Teşekkürler.

yesilayrca.png

Kaynak belirtilmeyen görseller bana aittir. The pictures without source in the post is belong to me

Sort:  

Sınıf ayrımı yapan payton istemiyoruz. Öğretmenleri nesneleştiren payton da istemiyoruz. Alınacak bir miras varsa önce veraset ilamı alınmalıdır ve versaet ilamı ise ya Noterden ya da Sulh Mahkemelerinden alınır. Payton ben veririm derse güvenmeyin. bugünü paytonu protesto etme günü ilan ediyorum. 🤪🤪🤪

Canım hocam ya nasıl da dertlenmiş :) Python'un niyeti kötü değil hocam, insanların işlerini kolaylaştırmak için öyle yapıyor. Zamanla anlaşılacaktır diye düşünüyorum. Teşekkür ederim değerli yorumunuz için ;)

You got a 31.43% upvote from @minnowvotes courtesy of @elektroyazilim!

You got a 100.00% upvote from @minnowvotes courtesy of @elektroyazilim!

You got a 12.24% upvote from @joeparys! Thank you for your support of our services. To continue your support, please follow and delegate Steem power to @joeparys for daily steem and steem dollar payouts!

The force is with you! You got a 35.63% upvote from @steemyoda courtesy of @elektroyazilim!

You got a 94.69% upvote from @luckyvotes courtesy of @elektroyazilim!

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.030
BTC 67519.16
ETH 3532.90
USDT 1.00
SBD 2.68