DART somo la 31: inheritance kwenye DART OOP

Katika somo hili utakwenda kujifunza kuhusu inheritance, na inavyoweza kutumika kwenye Dart OOP.

Inheritance ni nini?

Inheritance ni uweze wa class zaidi ya moja kushirikiana katika tabia na sifa za class. Yaani method na properties za class moja  zinaweza kurithiwa (inherited) kwenye class nyingine. Tunaweza kufanya hivi kwa kutumia keyword extend.

 

Hivyo hapo tuna class inayorithi na inayorithiwa. Hii inayorithiwa ndio ambayo inaanza, hii huitwa parent class na hii inayorithi hiutwa child class. Kunaweza kuwa na child class zaidi ya moja ambazo zinarithi kutoka kwenye parent class moa. Parent class pia huitwa base class  au  supper class. Na child class pia hujulikana kama derived class au sub class.  

 

Mfano:

Hapa nina class 2 ya kwanza nimeipa jina la gari yenyewe itakuwa ina print jina la gari na namba yake. Hivyo itakuwa na property mbili.ambazo ni jina  na namba

class gari {

 // Properties

 String? jina;

 int? namba;

 

 // Method

 void display() {

   print("Jina: $jina");

   print("Namba: $namba");

 }

}

 

Kisha nina class nyingine nitaiita toyota ambayo ina print rangi ya gazi na idadi ya milango. Hvyo itakuwa na properties mbili ambazo ni rangi na  milango

class toyota{

 // Fields

 String? rangi;

 int? milango;

 

 // Method

 void displayToyota() {

   print("Rangi: $rangi");

   print("Milango : $milango");

 }

}

 

Kwa pamoja class hizi mbili zinaweza kuleta matokeo haya:

class gari {

 // Properties

 String? jina;

 int? namba;

 

 // Method

 void display() {

   print("Jina: $jina");

   print("Namba: $namba");

 }

}

 

class toyota{

 // Fields

 String? rangi;

 int? milango;

 

 // Method

 void displayToyota() {

   print("Rangi: $rangi");

   print("Milango : $milango");

 }

}

 

void main() {

 // Creating an object of the gari class

 var g1 = gari();

 g1.jina = "Toyota";

 g1.namba = 2023;

 g1.display();

 

 var g2 = toyota();

 g2.rangi = "Nyeusi";

 g2.milango = 4;

 g2.displayToyota();

}

 

 

Sasa tunakwenda kuchanganya class hizi mbili ili class ya totota iweze kurithi property na method kutoka kwenye class gari ili iweze ku print matokeo.

class gari {

 // Properties

 String? jina;

 int? namba;

 

 

 // Method

 void display() {

   print("Jina: $jina");

   print("Namba: $namba");

 }

}

 

 

class toyota extends gari{

 // Fields

 String? rangi;

 int? milango;

 

 

 // Method

 void displayToyota() {

   display();

   print("Rangi: $rangi");

   print("Milango : $milango");

 }

}

 

 

void main() {

 var g = toyota();

 g.jina = "Toyota";

 g.namba = 2023;

 g.rangi = "Nyeusi";

 g.milango = 4;

 g.displayToyota();

}

 


 

Aina za inheritance:

Inheritance imegawanyika katika makundi makuu manne ambayo ni:-

  1. Single inheritance katika aina hii class itarithi kutoka kwenye class moja tu. 
  2. Multilevel inheritance katika aina hii unaweza kurithi class ambayo nayo inarithi kutoa kwenye class nyingine.
  3. Hierachical inheritance katika aina hii parent class moja inaweza kurithiwa na class zaidi ya moja.
  4. Multiple inheritance  Katia aina hii ckass inaweza kurithi kutoka kwenye class zaidi ya koja. Hata hivyo aina hii hairuhusiwi kwenye Dart.

 

Wacha tuone mifano ya kila moja kati ya hizo:-

  1. Single inheritance. Hii ni kama tulivyoona kwenye mfano wa kwanza.

class Car {

 // Properties

 String? name;

 double? prize;

}

 

class Tesla extends Car {

 // Method to display the values of the properties

 void display() {

   print("Name: ${name}");

   print("Prize: ${prize}");

 }

}

 

void main() {

 // Create an object of Tesla class

 Tesla t = new Tesla();

 // setting values to the object

 t.name = "Tesla Model 3";

 t.prize = 50000.00;

 // Display the values of the object

 t.display();

}

 

 

  1. Multilevel inheritance

Katika mfano unaofuata parent class ni gari ambayo imerithiwa na class toyota ambayo pia imerithiwa na class Avalon.

class gari {

 // Properties

 String? jina;

 int? namba;

 

 

 // Method

 void display() {

   print("Jina: $jina");

   print("Namba: $namba");

 }

}

 

 

class toyota extends gari{

 // Fields

 String? rangi;

 int? milango;

 

 

 // Method

 void displayToyota() {

   display();

   print("Rangi: $rangi"...

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 1970-01-01 03:33:44 Topic: DART Main: ICT File: Download PDF Views 539

Share On:

Facebook WhatsApp
Sponsored links
👉1 Kitabu cha Afya    👉2 Tafasiri ya Riyadh Swalihina    👉3 Sira ya Mtume Muhammad (s.a.w)    👉4 kitabu cha Simulizi    👉5 Bongolite - Game zone - Play free game    👉6 Madrasa kiganjani   

Post zinazofanana:

DART somo la 39: mixin kwenye dart

Katika somo hii utakwenda kujifunza kuhusu concept mixin na jinsi inavyoweza kutumika kwenye Dart.

Soma Zaidi...
DART somo la 34: Static variable kwenye Dart

Katika somo hili utakwenda kujifunza kuhusu static property na jinsi ambavyo inavyotumika.

Soma Zaidi...
DART somo la 41: concept ya generic kwenye dart

Katika somo hili utakwenda kujifunza kuhusu concept ya generics ili kuweza kufanya kazi na aina mbalimbali za data kwenye class.

Soma Zaidi...
DART somo la 2: syntax za dart

Katika somo hili tutatkwenda kuziona baadhi ya xyntax yaani kanunu za uandishi wa code za dart.

Soma Zaidi...
DART somo la 24: Dart OOP maana ya Object Oriented Programming kwenye Dart

Katika somo hili utakwenda kujifunza maana ya OOP na faida zake. Pia utakwenda kujifunza kuhusu features za OOP.

Soma Zaidi...
DART somo la 22: Jinsi ya kutumia html library kwenye Dart

Katika somo hili tutakwenda kujifunz ajinsi ya kutumia library ya html kwenye Dart. somo hili litakupeleka kujifunza jinsi ya ku display dart output kwenye faili la html.

Soma Zaidi...
DART somo la 20: method zinazotumika kwenye map data type kwenye Dart

Katika somo hili tutakwenda kujifunza kuhusu method ambazo hutumika kwenye map data type

Soma Zaidi...
DART somo la 36: Abstract class kweye Dart

Katika somo hili utakwenda kujifunza kuhusu abstract class na abstract method kwenye Dart.

Soma Zaidi...
DART somo la 3: Aina za Data

Katika somo hili utakwenda kujifunza aina za data zinazotumika kwenye Dart.

Soma Zaidi...
DART somo la 18: Dart method zinazotumika kwenye List data type

Katika somo hili utakwenda kujifunza method yhinginge zinazofanya kazi kwenye list data type kwenye Dart.

Soma Zaidi...