වැදගත් දෙවියෙක් වෙමු OOP 2
මුලින්ම AspenK සහෝදරයා ගැන කියන්න ඕනේ. මේ සහෝදරයා මට සැහෙන්න උදවු කරනවා. ඉස්සරහට යන්න. ඒ වගේම අනික් අයත් එහෙමයි ගොඩක් උදවු කරනවා. ගොඩක් ඉස්තුති.
කොමෙන්ට් කරන. අයට. විශේෂයෙන් මගේ වැරදි පෙන්නලා දෙන අයට.
මුලින්ම AspenK සහෝදරයා ගැන කියන්න ඕනේ. මේ සහෝදරයා මට සැහෙන්න උදවු කරනවා. ඉස්සරහට යන්න. ඒ වගේම අනික් අයත් එහෙමයි ගොඩක් උදවු කරනවා. ගොඩක් ඉස්තුති.
කොමෙන්ට් කරන. අයට. විශේෂයෙන් මගේ වැරදි පෙන්නලා දෙන අයට.ඔන්න දෙවියෙක් වෙමු ( OOP ) කලින් එකට හොද මෙව්වා තිබ්බ නිසා එකේම දෙවෙනි කොටස අරන් අවා. එක බැලුවේ නැත්නම් මේකට කලින් එක බලල ඉන්න.
හරි දැන් අපිට තියෙනවා මිනිස්සු හදන්න පුළුවන් ආකෘතියක්. එත් ඉතින් හත් දෙයියනේ. ඕකෙන් හදන්න පුළුවන් කන බොන නිදාගන්න ඇවිදින්න පුළුවන්
මිනිස්සු සෙට් එකක් විතරයි නේ. කොටින්ම කිව්වොත් කාලකන්නි ටිකක් විතරයි හෝදන්න පුළුවන්. අද අපි හදන්න යන්නේ වැඩකට ඇති මිනිස්සු සෙට් එකක්.
හරි අපි හදන්න යමු දොස්තර කෙනෙක්. දැන් බලමු දොස්තර කියන මිනිහට මොනවද කරන්න පුළුවන් කියලා.
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>බෙහෙත් දෙනවා
වගේ ඒවානේ..
එතකොට දොස්තරයට තියෙන්නේ මොනවා ද ? මොනවද ඉතින් සාමාන්ය මිනිහෙක්ට තියෙන හැමදේම තියෙනවා.
> නමක්
> උස
> මහත
> හමේ පාට
>කොන්ඩේ පාට
දැන් අපි දන්නවනේ දොස්තරයට මොනවද තියෙන්නේ/කරන්න පුළුවන් කියලා. එත් ඉතින් මේලෝකේ ඉන්නේ දොස්තරලා විතරක් යැයි.
එහෙනම් අපි තව ටික දෙනෙක් අරගෙන බලමු මොනවද කරන්න පුළුවන් කියලා.
කොන්දොස්තර ,
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>ටිකට් කඩනවා
පොලිස් කාරයෙක් ,
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>අයුධ පෙන්නවා
ඔය ඇති , දැන් බලන්න මේ හැම එකාටම උන්ට විතරක් කරන්න පුළුවන් දේවල් තියෙනවා. මිනිස්සු හැමදෙනෙක්ම කරන දේවල් ටියෙනවා.
ඒ කියන්නේ දොස්තර උනත් , කොන්දොස්තර උනත් , පොලිස් කාරයෙක් උනත් මොකෙක් උනත් ඒ හැමදෙනාම මිනිස්සු නේ.
දැන් අපි බලමු දොස්තර කෙනෙක් හදාගන්න.
දැන් අපි මොකක්ද කරන්නේ ඔව් කලින් කරා වගේ Doctor කියලා class එකක් හදාගන්නවා දොස්තරට තියෙන්න ඕන දේවල් ටික
variable විදියට හදාගන්නවා. කරන්න පුළුවන් ටික method විදියට හදාගන්නවා.
එතකොට,
Eat();
Drink();
Sleep();
Walk();
Check_Patient();
එහෙනම් හිතා ගන්නකො, ඔය වගේ හැම මිනිස්සු ජාතියටම ඔය වගේ class හදාගන්න ගියොත් දේවියට උනත් එපා වෙනවා.
අනික ඉතින් ඔයා class වලට මහා වෙනස් තියෙනවද නෑනේ. වෙනස් වෙන්නේ එක method එකයි. අනික් ඒවා ඔක්කොම සාමාන්ය මිනිස්සු කරන දේවල්නේ.
දැන් දෙවියා කල්පනා කරනවා. අනේ අර කලින් හදාගත්ත human කියන class එකේ
Eat();
Drink();
Sleep();
Walk();
ටික තියෙන එකේ ඕකෙන් මොකක් හරි කරලා දොස්තරව හදාගත්තොත් තව එක method එකනෙ හදන්න ඕනේ කියලා.
ඇයි එතකොට පොලිස් කාරයට ආ උටත් එක method එකයි හදන්න ඕනේ.
මේවගේ ඒවා හදන්න ඕන වෙලාවට OOP වලදී එක Inheritance කියන සිද්දිය එනවා.
inherit = උරුම වෙනවා
මෙහෙමනේ. ඔයා ඉන්නවා. නිකමට හිතලා බලන්න ඔයාට තියෙන්නේ ඔයාගේ තාත්තගේ තියෙන ලක්ෂණ නේද ?
හරියට බැලුවොත් තාත්තගේ ලක්ෂණ 100% කම ඔයා ලග තියෙන්න ඕනේ නේද ?
තාත්තගේ හමේ පාට , කොන්දේ පාට , වගේ ඒවා.
එතකොට ඔයා මොකද කරන්නේ කොහේ හරි class එකක් හොයාගෙන ගිහින් java ඉගෙන ගන්නවා. එතකොට ඔයාගේ තාත්තට java පුළුවන් වෙනවද ?
නෑනේ . එත් දැන් ඔයාට තාත්තගේ දේවල් එහෙමම තියෙනවා ඒ වගේම ඔයාගෙම ඒවාත් තියෙනවා.
තව විදියකට කිව්වොත් Doctor කියලා class එකක් හදලා Human class එක inherit කරොත් Doctor කියන class එකට Human class
එකේ තියෙන හැම දේම එනවා. එත් එක්කම විතරක් ඕන දේවල් ටික Doctor කියන class එකේ දාගන්නවා.
දැන් බලමු කොහොමද ඕක java වල කරන්නේ කියලා.
java වල inherit කරන්නේ extends කියන keyword එකෙන්.
ආ දැන් කොහෙටද ඔය මගුල් keyword එක දාන්නේ.
Class Doctor extends Human{
}
දැන් දැක්කද කොහෙටද දාන්නේ කියලා. ඔය උඩින් කරලා තියෙන්නේ Doctor කියලා class එකක් හදලා තියෙනවා ඒ class එකේ "තාත්තා" Human.
ඕකට කියන්නේ inheritance කියලා. Parent Child relationship එක කියලා.
Parent = Human
Child = Doctor
Human:
Doctor:
හරි දැන් doctor කෙනෙක් ඉන්නවා උට human ගේ දේවල් ටික ඔක්කොමත් තියෙනවා. දැන් ඉතින් ඔහොම තිබ්බම හරිද ? එහෙනම් doctor කෙනෙක් හදන්න ඕනෙද ?
දැන් එහෙනම් Doctor ව ලෙඩ්ඩු බලන්න පුළුවන් විදියට හදමු. මොකක්ද කරන්න තියෙන්නේ Doctor class එකේ අපිට ඕන අලුත් method එක හදනවා.
එච්චරයි.
දැක්කනේ පොඩි දෙයක් කරේ. දැන් ඔයාලා බලනව ඇති යකෝ කොහෙන්ද name කියලා variable එකක් ඇවිත් තියෙන්නේ කියලා. මන් කිව්වනේ
මේකේ Human ට තියෙන හැම දෙයක්ම තියෙනවා බලන්නකෝ Human class එකේ ඇති name කියලා varible එකක්.
දැන් අපි තව වැඩකට ඇති මිනිස්සු දෙන්නෙක් හදාගමු.
ඔන්න හරි මේවත් දොස්තර වගේමයි. human class එක inherit කරලා ටින්න්නේ. ඒ වගේ එයාලට අවේනික method එකක් තියෙනවා. එච්චරයි.
දැන් දෙයිය දෙයියනේ කියලා doctor කෙනෙක්ව මවන්න යන්නේ. මතකනේ කලින් පාරා අපි හැදුවේ නිකන් මිනිහෙක්
Human human1 = new Human();
මේ පාර හදන්නේ
Doctor doctor1 = new Doctor();
ඔය කරන්නේ Doctor class එකේ object එකක් හදාගන්න එක.
එතකොට මොනවද ඔය doctor1 කියන object එක ඇතුලේ තියෙන්නේ.
1.Human class එකේ තිබ්බ ඔක්කොම දේවල් ටික ( Human class එක extends කරලා තියෙන නිසා )
2. Doctor class එකේ ඔක්කොම දේවල් ටික .
දැන් එහෙනම් කලින් වගේම මේ දොස්තරය නමක් , උසක් , බරක් දීලා වැඩේ කරමු.
හරිනේ එහෙනම් දැන් බලමු මේ දොස්තරට කරන්න පුළුවන් දේවල්.
output
අම්මට සිරි අපිටත් දැන් දොස්තරෙයෙක් හදන්න පුළුවන්. පොඩ්ඩක් බලමුද අනික් දෙන්නටත් වැඩ කරනවද කියලා
Output
බඩු වැඩ. දැන් ඔයාට මිනිස්සු හදන්න කොච්චර ලේසිද ? නැත්නම් ඉස්සර වගේ එකම method ටික හැම class එකේම ලිය ලිය කාලේ කන්න ඕනේ නැනේ.
හරිනේ. එහෙනම් ඔන්න ඔයාලා ඉගෙන ගත්තේ inheritance ඊළගට තවත් එකක් කරන්න බලාපොරොත්තු වෙනවා.
OOP concept එකෙන් වැඩියෙන්ම පාවිච්චි කරන්නේ මේ inheritance කියන එක. මේක ඔයාලා හිතනවට වඩා ගොඩක් වැදගත්
සින් එකක්.
එහෙනම් කට්ටියටම සුබ
project : Download
හරි දැන් අපිට තියෙනවා මිනිස්සු හදන්න පුළුවන් ආකෘතියක්. එත් ඉතින් හත් දෙයියනේ. ඕකෙන් හදන්න පුළුවන් කන බොන නිදාගන්න ඇවිදින්න පුළුවන්
මිනිස්සු සෙට් එකක් විතරයි නේ. කොටින්ම කිව්වොත් කාලකන්නි ටිකක් විතරයි හෝදන්න පුළුවන්. අද අපි හදන්න යන්නේ වැඩකට ඇති මිනිස්සු සෙට් එකක්.
හරි අපි හදන්න යමු දොස්තර කෙනෙක්. දැන් බලමු දොස්තර කියන මිනිහට මොනවද කරන්න පුළුවන් කියලා.
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>බෙහෙත් දෙනවා
වගේ ඒවානේ..
එතකොට දොස්තරයට තියෙන්නේ මොනවා ද ? මොනවද ඉතින් සාමාන්ය මිනිහෙක්ට තියෙන හැමදේම තියෙනවා.
> නමක්
> උස
> මහත
> හමේ පාට
>කොන්ඩේ පාට
දැන් අපි දන්නවනේ දොස්තරයට මොනවද තියෙන්නේ/කරන්න පුළුවන් කියලා. එත් ඉතින් මේලෝකේ ඉන්නේ දොස්තරලා විතරක් යැයි.
එහෙනම් අපි තව ටික දෙනෙක් අරගෙන බලමු මොනවද කරන්න පුළුවන් කියලා.
කොන්දොස්තර ,
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>ටිකට් කඩනවා
පොලිස් කාරයෙක් ,
>කන්න
>බොන්න
>ඇවිදින්න
>නිදාගන්න
>අයුධ පෙන්නවා
ඔය ඇති , දැන් බලන්න මේ හැම එකාටම උන්ට විතරක් කරන්න පුළුවන් දේවල් තියෙනවා. මිනිස්සු හැමදෙනෙක්ම කරන දේවල් ටියෙනවා.
ඒ කියන්නේ දොස්තර උනත් , කොන්දොස්තර උනත් , පොලිස් කාරයෙක් උනත් මොකෙක් උනත් ඒ හැමදෙනාම මිනිස්සු නේ.
දැන් අපි බලමු දොස්තර කෙනෙක් හදාගන්න.
දැන් අපි මොකක්ද කරන්නේ ඔව් කලින් කරා වගේ Doctor කියලා class එකක් හදාගන්නවා දොස්තරට තියෙන්න ඕන දේවල් ටික
variable විදියට හදාගන්නවා. කරන්න පුළුවන් ටික method විදියට හදාගන්නවා.
එතකොට,
Eat();
Drink();
Sleep();
Walk();
Check_Patient();
එහෙනම් හිතා ගන්නකො, ඔය වගේ හැම මිනිස්සු ජාතියටම ඔය වගේ class හදාගන්න ගියොත් දේවියට උනත් එපා වෙනවා.
අනික ඉතින් ඔයා class වලට මහා වෙනස් තියෙනවද නෑනේ. වෙනස් වෙන්නේ එක method එකයි. අනික් ඒවා ඔක්කොම සාමාන්ය මිනිස්සු කරන දේවල්නේ.
දැන් දෙවියා කල්පනා කරනවා. අනේ අර කලින් හදාගත්ත human කියන class එකේ
Eat();
Drink();
Sleep();
Walk();
ටික තියෙන එකේ ඕකෙන් මොකක් හරි කරලා දොස්තරව හදාගත්තොත් තව එක method එකනෙ හදන්න ඕනේ කියලා.
ඇයි එතකොට පොලිස් කාරයට ආ උටත් එක method එකයි හදන්න ඕනේ.
මේවගේ ඒවා හදන්න ඕන වෙලාවට OOP වලදී එක Inheritance කියන සිද්දිය එනවා.
inherit = උරුම වෙනවා
මෙහෙමනේ. ඔයා ඉන්නවා. නිකමට හිතලා බලන්න ඔයාට තියෙන්නේ ඔයාගේ තාත්තගේ තියෙන ලක්ෂණ නේද ?
හරියට බැලුවොත් තාත්තගේ ලක්ෂණ 100% කම ඔයා ලග තියෙන්න ඕනේ නේද ?
තාත්තගේ හමේ පාට , කොන්දේ පාට , වගේ ඒවා.
එතකොට ඔයා මොකද කරන්නේ කොහේ හරි class එකක් හොයාගෙන ගිහින් java ඉගෙන ගන්නවා. එතකොට ඔයාගේ තාත්තට java පුළුවන් වෙනවද ?
නෑනේ . එත් දැන් ඔයාට තාත්තගේ දේවල් එහෙමම තියෙනවා ඒ වගේම ඔයාගෙම ඒවාත් තියෙනවා.
තව විදියකට කිව්වොත් Doctor කියලා class එකක් හදලා Human class එක inherit කරොත් Doctor කියන class එකට Human class
එකේ තියෙන හැම දේම එනවා. එත් එක්කම විතරක් ඕන දේවල් ටික Doctor කියන class එකේ දාගන්නවා.
දැන් බලමු කොහොමද ඕක java වල කරන්නේ කියලා.
java වල inherit කරන්නේ extends කියන keyword එකෙන්.
ආ දැන් කොහෙටද ඔය මගුල් keyword එක දාන්නේ.
Class Doctor extends Human{
}
දැන් දැක්කද කොහෙටද දාන්නේ කියලා. ඔය උඩින් කරලා තියෙන්නේ Doctor කියලා class එකක් හදලා තියෙනවා ඒ class එකේ "තාත්තා" Human.
ඕකට කියන්නේ inheritance කියලා. Parent Child relationship එක කියලා.
Parent = Human
Child = Doctor
Human:
Doctor:
හරි දැන් doctor කෙනෙක් ඉන්නවා උට human ගේ දේවල් ටික ඔක්කොමත් තියෙනවා. දැන් ඉතින් ඔහොම තිබ්බම හරිද ? එහෙනම් doctor කෙනෙක් හදන්න ඕනෙද ?
දැන් එහෙනම් Doctor ව ලෙඩ්ඩු බලන්න පුළුවන් විදියට හදමු. මොකක්ද කරන්න තියෙන්නේ Doctor class එකේ අපිට ඕන අලුත් method එක හදනවා.
එච්චරයි.
දැක්කනේ පොඩි දෙයක් කරේ. දැන් ඔයාලා බලනව ඇති යකෝ කොහෙන්ද name කියලා variable එකක් ඇවිත් තියෙන්නේ කියලා. මන් කිව්වනේ
මේකේ Human ට තියෙන හැම දෙයක්ම තියෙනවා බලන්නකෝ Human class එකේ ඇති name කියලා varible එකක්.
දැන් අපි තව වැඩකට ඇති මිනිස්සු දෙන්නෙක් හදාගමු.
ඔන්න හරි මේවත් දොස්තර වගේමයි. human class එක inherit කරලා ටින්න්නේ. ඒ වගේ එයාලට අවේනික method එකක් තියෙනවා. එච්චරයි.
දැන් දෙයිය දෙයියනේ කියලා doctor කෙනෙක්ව මවන්න යන්නේ. මතකනේ කලින් පාරා අපි හැදුවේ නිකන් මිනිහෙක්
Human human1 = new Human();
මේ පාර හදන්නේ
Doctor doctor1 = new Doctor();
ඔය කරන්නේ Doctor class එකේ object එකක් හදාගන්න එක.
එතකොට මොනවද ඔය doctor1 කියන object එක ඇතුලේ තියෙන්නේ.
1.Human class එකේ තිබ්බ ඔක්කොම දේවල් ටික ( Human class එක extends කරලා තියෙන නිසා )
2. Doctor class එකේ ඔක්කොම දේවල් ටික .
දැන් එහෙනම් කලින් වගේම මේ දොස්තරය නමක් , උසක් , බරක් දීලා වැඩේ කරමු.
හරිනේ එහෙනම් දැන් බලමු මේ දොස්තරට කරන්න පුළුවන් දේවල්.
output
අම්මට සිරි අපිටත් දැන් දොස්තරෙයෙක් හදන්න පුළුවන්. පොඩ්ඩක් බලමුද අනික් දෙන්නටත් වැඩ කරනවද කියලා
බඩු වැඩ. දැන් ඔයාට මිනිස්සු හදන්න කොච්චර ලේසිද ? නැත්නම් ඉස්සර වගේ එකම method ටික හැම class එකේම ලිය ලිය කාලේ කන්න ඕනේ නැනේ.
හරිනේ. එහෙනම් ඔන්න ඔයාලා ඉගෙන ගත්තේ inheritance ඊළගට තවත් එකක් කරන්න බලාපොරොත්තු වෙනවා.
OOP concept එකෙන් වැඩියෙන්ම පාවිච්චි කරන්නේ මේ inheritance කියන එක. මේක ඔයාලා හිතනවට වඩා ගොඩක් වැදගත්
සින් එකක්.
එහෙනම් කට්ටියටම සුබ
project : Download
Last edited:



