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:-
- Single inheritance katika aina hii class itarithi kutoka kwenye class moja tu.
- Multilevel inheritance katika aina hii unaweza kurithi class ambayo nayo inarithi kutoa kwenye class nyingine.
- Hierachical inheritance katika aina hii parent class moja inaweza kurithiwa na class zaidi ya moja.
- 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:-
- 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
&nbs...
Umeionaje Makala hii.. ?
Share On:
👉1 Bongolite - Game zone - Play free game 👉2 Kitau cha Fiqh 👉3 web hosting 👉4 Madrasa kiganjani 👉5 Tafasiri ya Riyadh Swalihina 👉6 ai web app
Post zinazofanana:
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 12: Kuchukuwa user input kwenye Dart
Jinsi ya kuchukuwa user input kwenye Dart kwa ajili ya kuongeza user interaction kwenye program.
Soma Zaidi...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 16: String method zinazotumika kwneye Dart
Katika somo hili utakwenda kujfunza kuhusu String method zinazotumika kwenye Dart.
Soma Zaidi...DART somo la 30 :Jinsi ya kutengeneza setter na geter kwenye OOP
Katika somo hili tutakwenda kujifunza zaidi kuhusu method za getter na setter. Tutakwenda kuona hasa zinavyotumika na zinavyotengenezwa.
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...