image

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");

...



Kama unahitaji kuuliza maswali Bofya hapa





           

Je! umeipenda hii post?
Ndio            Hapana            Save post

Rajabu Tarehe 2024-05-10 14:53:23 Topic: DART Main: Masomo File: Download PDF     Share On Facebook or Whatsapp Imesomwa mara 269


Sponsored links
👉1 Madrasa kiganjani     👉2 kitabu cha Simulizi     👉3 Kitabu cha Afya     👉4 Sira ya Mtume Muhammad (s.a.w)     👉5 Simulizi za Hadithi Audio     👉6 Kitau cha Fiqh    

Post zifazofanana:-

DART somo la 45: Jinai ys kutuma mysql database
Katika somo hili utakwenda kujifunza jinsi ya kutumia database ya mysql kwenye Dart. hakikisha umeelewa vyema na kutekeleza yalioelekezwa kutoka kwenye somo lililopita. Soma Zaidi...

DART somo la 24: Jinsi ya kutengeneza faili, folda na kuingiza data
Katika somo hili utakwenda kujifunza jinsi ya kuandika data kwenye faili. Kwanza utajifunza kutengeneza folda, kisha faili na kuweka data, kisha utajifunza kufuta fali. Soma Zaidi...

DART somo la 19: method zinazotumika kwenye set data type kwenye Dart
Katika somo hili utakwenda kujifunza kuhusu set data type pamoja na method ambazo hufanya kazi kwenye set. Soma Zaidi...

DART somo la 43: Stream kwenye Dart
Katika somo hili utakwenda ujifunz akuhusu concept ya stream kwenye Dart. pia ttaona kwa namna gani strean inaweza kutofautiana na future wakati zote mbili zipo kwenye asychronous programming. Soma Zaidi...

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 11:break and continue statement kwenye Dat loop
Katika somo hili utakwenda kujifunza kuhusu break na continue kwenye Dart loop za for loop na while loop. Soma Zaidi...

DART somo la 32: Inheritance kwenye construct method:
Katika masomo yaliopita tumesha jifunza jinsi inheritance inavyokuwa, ila hatujaona kwa namna gani utaweza ku inherit constructor method. Somo hili litashughulika na swla hilo. Soma Zaidi...

DART SOMO LA 14: Aina za function kwenye Dart
Katika somo hili tutakwenda kuingia ndani zaidi kwenye somo la function. Hapa tutakwenda kuona aina za function. Soma Zaidi...

DART somo la 21: Jinsi ya kutengeneza library kwenye Dart
Katika somo hili utajifunza kuhusu dart library. Pia tutakwend aktengeneza library yetu wennyewe kwa ajili ya kufanya mazoezi zaidi. 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 7: matumizi ya if, else, if else, else if kwenye Dart
Katika somo hili utakwenda kujifunza kuhusu namna ambavyo program inaweza kufanya maamuzi kulingana na mashart fulani.ama namna ambavyo program inaweza ku run code zaii ya mara moja kulingana na mashart. Hapa tutazingumzia flow of control statement Soma Zaidi...

DART somo la 40: factory constructor
Katika somo hiliutakwenda kujifunza aina nyingine ya constructor ambayo hutumika kwenye Dart. aina hiyo ni factory constructory. Soma Zaidi...