ලිපි අංක 6 - Declarations and Access Control ( Part II )
class එකක් සහ object කියන්නෙ මොකක්ද කියල කලින් පෝස්ටුවෙන් දැන ගත්තනෙ, ඊට පස්සෙ අපි දැන ගන්න ඕන දෙයක් තමා variable සහ method කියන්නෙ මොනවද කියල.
අද අපි ඒ දෙක පොඩ්ඩක් බලමු. මම මේ පෝස්ටුවෙ ඒ ගැන බොහොම පොඩ්ඩයි කියල තියෙන්නෙ.ඉස්සරහට අපි කොහොමත් programs ලියනකොට ඔය දෙක අහුවෙනවා.
State(instance variables)
හැම object එකකටම තියෙනව ඒ object එකටම ආවේණික වුනු, class එක විසින් අර්තදක්වන ලද variable සෙට් එකක්.
ඒ කියන්නෙ object එකෙන් object එකට එකම variable සෙට් එකක් තිබ්බට ඒ ඒ object එකේ ඒ ඒ variable වල values වෙනස් වෙන්න පුලුවන්.
object එකක තියෙන variables වලට values assign උනාම තමා object එකකට state එකක් හම්බෙන්නෙ.
උදාහරණයක් බලමුද....
දැන් හිතන්න Boy කියල class එකක් තියෙනවා.
ඒ class එකේ variable එකක් තියෙනව name කියල.
මම ඒ Boy කියන class එකෙන් object එකක් හදනවා.
එතකොට ඒ object එක ඇතුලෙ තියෙනවා name කියන variable එක.
මම ඒ variable එකට value එකක් දෙනව sunil කියල.
ඊට පස්සෙ මම තව object එකක් හදනවා Boy class එකෙන්.
ඒ object එකේ name කියන variable එකට value එකක් දෙනවා kasun කියලා.
දැන් තේරෙනවද එකම class එකේ,object දෙකක එකම variable එකක් තිබ්බට variable දෙකට values දෙකක්,state දෙකක්.
Behavior(methods)
programmer කෙනෙක් class එකක් create කරන කොට එයා ඒ class එක ඇතුලෙ methods create කරනවා.
එහෙම නැත්නම් ලියනවා.
method එක ඇතුලෙ තමයි class එකේ logic එක store කරල තියාගන්නෙ.
store කරල තියා ගන්නව කිව්වට මේ වී ගබඩා කරනව වගේ නෙමේ, class එකේ logic එක implement කරන්නෙ method එක ඇතුලෙ.
අනිත් එක ඇත්තටම class එකෙන් මොකක්ද වෙන්න ඕනෙ කියල කියන එක ලියන්නෙ method ඇතුලෙ.
method ඇතුලෙ තමා algorithm execute වෙන්නෙ.
ඒ කියන්නෙ කපන කොටන වැඩ ටික කරන්නෙ method ඇතුලෙ.
data කපල කොටල කම්මල වගේ වැඩ කරන්නෙ method ඇතුලෙ තමා.
මේකෙත් ඉතින් කලින් වගේම තමා,
Boy class එකේ තියෙන method වල ලියනවා Boy කෙනෙක් කරන වැඩ.
sunil ට හදපු object එකේ ලියනවා sunil කරන වැඩ.
kasun ට හදපු object එකේ ලියනව kasun කරන වැඩ.
අද අපි ඒ දෙක පොඩ්ඩක් බලමු. මම මේ පෝස්ටුවෙ ඒ ගැන බොහොම පොඩ්ඩයි කියල තියෙන්නෙ.ඉස්සරහට අපි කොහොමත් programs ලියනකොට ඔය දෙක අහුවෙනවා.
State(instance variables)
හැම object එකකටම තියෙනව ඒ object එකටම ආවේණික වුනු, class එක විසින් අර්තදක්වන ලද variable සෙට් එකක්.
ඒ කියන්නෙ object එකෙන් object එකට එකම variable සෙට් එකක් තිබ්බට ඒ ඒ object එකේ ඒ ඒ variable වල values වෙනස් වෙන්න පුලුවන්.
object එකක තියෙන variables වලට values assign උනාම තමා object එකකට state එකක් හම්බෙන්නෙ.
උදාහරණයක් බලමුද....
දැන් හිතන්න Boy කියල class එකක් තියෙනවා.
ඒ class එකේ variable එකක් තියෙනව name කියල.
මම ඒ Boy කියන class එකෙන් object එකක් හදනවා.
එතකොට ඒ object එක ඇතුලෙ තියෙනවා name කියන variable එක.
මම ඒ variable එකට value එකක් දෙනව sunil කියල.
ඊට පස්සෙ මම තව object එකක් හදනවා Boy class එකෙන්.
ඒ object එකේ name කියන variable එකට value එකක් දෙනවා kasun කියලා.
දැන් තේරෙනවද එකම class එකේ,object දෙකක එකම variable එකක් තිබ්බට variable දෙකට values දෙකක්,state දෙකක්.
Behavior(methods)
programmer කෙනෙක් class එකක් create කරන කොට එයා ඒ class එක ඇතුලෙ methods create කරනවා.
එහෙම නැත්නම් ලියනවා.
method එක ඇතුලෙ තමයි class එකේ logic එක store කරල තියාගන්නෙ.
store කරල තියා ගන්නව කිව්වට මේ වී ගබඩා කරනව වගේ නෙමේ, class එකේ logic එක implement කරන්නෙ method එක ඇතුලෙ.
අනිත් එක ඇත්තටම class එකෙන් මොකක්ද වෙන්න ඕනෙ කියල කියන එක ලියන්නෙ method ඇතුලෙ.
method ඇතුලෙ තමා algorithm execute වෙන්නෙ.
ඒ කියන්නෙ කපන කොටන වැඩ ටික කරන්නෙ method ඇතුලෙ.
data කපල කොටල කම්මල වගේ වැඩ කරන්නෙ method ඇතුලෙ තමා.
මේකෙත් ඉතින් කලින් වගේම තමා,
Boy class එකේ තියෙන method වල ලියනවා Boy කෙනෙක් කරන වැඩ.
sunil ට හදපු object එකේ ලියනවා sunil කරන වැඩ.
kasun ට හදපු object එකේ ලියනව kasun කරන වැඩ.
Comments
Post a Comment