Wednesday, January 11, 2012

Java - Method

අද අපි බලමු ජාවා වල තියන methods ගැන.
මම මුලින්ම කියලා දෙන්නම් මොකද්ද method එකක් කියන්නේ කියලා.

අපි සරල උදාහරණයක් ලෙස වාහන නිපදවන කර්මාන්ත ශාලවක් ගමු.මේ කර්මාන්ත ශාලාවේ එක එක ජාතියෙ machines ගොඩක් තියනවා. සමහර machine වලින් වාහනයට අදාල engine එක සෙට් කරනවා, තවත් එකකින් paint ගානවා, තවත් එකකින් tyres සෙට් කරනවා.....................
අපි අපේ ජාවා class එක කර්මාන්ත ශාලාවක් කියලා සැලකුවොත් methods කියන්නේ ඒකේ තියන machines වගේ තමයි. සරලව කිවුවොත් අපෙ කර්මාන්ත ශාලාවට අදාල එක එක process කරන්නේ මෙන්න මේ methods හරහා තමයි.

දැන් අපි බලමු කොහොමද ජාවාවල methid එකක් ලියන්නේ කියන එක.
පහල තියෙන්නේ සරල ජාවා method එකක්. මේ එකෙන් වෙන්නේ අපි මොකක් හරි සංඛය්‍යා දෙකක් දුන්නාම පළමු සංඛය්‍යාව දෙවන සංඛය්‍යාවෙන් බෙදලා උත්තරය ලබාදෙන එක.

public double divider(double no1, double no2) throws ArithmeticException{
 return no1/no2;
}

දැන් අපි බලමු method එකේ තියන එක එක කොටස් ගැන.

1. (must have) මුලින්ම තියෙන්නේ access modifier එක. මම කලින් පාඩමක කිව්වා වගේ මේ access modifier එක මත තමයි මේ methid එක පාවිච්චි කරන්න පුලුවන් කාටද (ඒ කියන්නේ මොන මොන class/ methods වලටද කියන එක) තීරණය වෙන්නේ.

2. (must have) දෙවෙනියට තියෙන්නේ return type එක. මේකෙන් කියන්නේ methid එක execute වෙලා අවසන් වුනාම return කරන answer එක මොන data type එකට අදාල answer එකක්ද කියන එක. මොකක් හරි method එකකින් උත්තරයක් වෙන්නැත්නම් අපිට void කියන keyword එක පාවිච්චි කරන්න පුලුවන්. ( මේ මම කතා කරන්නේ imparetive programming ගැන, හැබැයි functional programming වලනම් ඔනේම methid එකක් ගත්තොත් ඒකෙන් අනිවාර්යයෙන් මොකක් හරි උත්තරයක් return කරන්න ඔනේ. ඒවා ගැන විස්තර පස්සේ කතා කරමු )
දැන් මේ method එකේ return type එක double. අපි method එකකට return type එකක් සඳහන් කලොත් එක අවසානයේ return කියන keyword එක සහ සඳහන් කරපු datatype එකට අදාලා දෙයක් තියෙන්නම ඔනේ.
අපිට method එකකින් අපිට කැමති data type එකක් return කරන්න පුලුවන්. ( we can return any data type from an method. it can be either a primitive data type or object type or even null )

3. (must have) ඊළඟට තියෙනේ method එකේ නම. methods එකිනෙක වෙන්කරලා හඳුනාගන්නේ මෙන්න මේ නමින් තමයි. එකම නම තියන methods එකට වඩා වැඩි ගනනක් තියෙන්න පුලුවන් (overloading, overridding ). ඒවා ගැන වෙනම පාඩමකින් බලමු.
method එකේ නම විදියට අපිට කැමති නමක් දෙන්න පුලුවන්. හැබැයි මම කලින් පාඩමක කියලා දුන්න විදියට නම සඳහන් වෙන්න ඔනේ. ඒ කියන්නේ method එකේ නම අනිවාර්යයෙන්ම පටන් ගන්න ඔනේ ඉංග්‍රීසි අකුරකින් හරි '_' sign එකෙන් හරි '$' sign එකෙන් විතරයි. number එකකින් methdod name එකක් පටන් ගන්න බෑ. method name එකේ ඉතුරු කොටසට අපිට numbers, alphabet characters, '_', '$' වලින් කැමති සංකලනයක් තෝරාගන්න පුලුවන්.

4. (optional) හතර වෙනියට තියෙන්නේ parametr/argument list එක. එකේ අපිට කැමති තරමක් arguments/parameters පාවිච්චි කරන්න පුලුවන්. කැමතිනම් parameter/argument list එකක් යොදා නොගන්නත් පුලුවන්. e.g. (String name, int age), (int no1, int no2), () .............

5. (optional) මේකෙන් කියන්නේ method එක execute වෙනකොට විසිවෙන්න පුලුවන් exceptions මොනවාද කියන එක.

6. (must have if ther is you declare a return type ) 2 point එකේ සඳහන් කලා වගේ method එකේ return type එකක් තියනවානම් මොකද්ද අන්තිමට return කරන answer එක.

අම්බෝ දැන්නම් සිංහලෙන් කොටන්න (type) ගිහින් අත රිදෙනවෝ. ඊළඟ පාඩමින් හමුවන තෙක් ජය වේවා !!....................

No comments:

Post a Comment