source code එකක ආදර කතාව …

මම දවසක් IDE එකේ package එකක් ඇතුලට වෙලා තනියෙම ඉන්නකොට එක ඇතුලට අවා මම දැනට දැකපු ලස්සනම, හුරුබුහුටීම class එකක්. මට එයාව දැක්ක ගමන් හිත ඇදුනා. එය ගාව තිබ්බ attributes ටික මම මීට කලින් කවුරු ළඟවත් දැකල නෑ. sub-routines වලින් කියන්න පුළුවන් හොඳ වැදගත් පවුලක source-code එකක් කියල. ඒවා හරිම නිහතමානී. attributes ටික default modify කරලා කියල දැක්කහම මට තේරුණා පොඩි chance එකක් තියෙනවා කියල.

ඉතින් මම බැලුව එයාගේ instance එකක් මගේ class එක ඇතුලේ හදාගන්න. මුල් ටිකේ වැඩේ හරියගෙන යනවා වගේ පෙනුනත් constructor එක call කරපු ගමන් පැන්න නේද හෙනහුරා වගේ compile error එකක්. එයාගේ constructor එක overload කරලා. එකට ඉල්ලන parameter එක මගේ datatypes වලට ගැලපෙන්නේ නැ.

මම වැඩේ අතෑරියේ නෑ. වැඩ ටිකක් දන්නා හින්ද හිතුව cast කරලා බලන්න ඕනේ කියල. ඉතින් මම බොහොම අමාරුවෙන් cast කරපු ගමන් අර හෙනහුරා මගේ මෘදු හදවතට දරුණු  ClassCastException එකකින් පහර දුන්නා.

මාව ඒ තරම් ලේසියෙන් වට්ටන්න බෑ කියල compiler දන්නේ නැතුව ඇති. මම ඒ exception එක try catch එකකින් handle කරලා යන්තම් බේරුනා.

Exception එක handle කරගත්තත් මගේ වැඩේ හරියන්නේ නැති බව මට තේරුණා. ඔහොම කල්පනා කර කර ඉන්නකොට තමයි මට ඔලුවට අවේ එයාගේ class එක public හින්ද මට එයාව inherit කරගන්න පුළුවන් කියල. ඉතින් මම මගේ class එකට එයාව inherit කරා. පූරුවේ කල පිනකටද කොහෙද යන්තම් වැඩේ හරි ගියා. මට හිතේ ඇතිවුන සතුට කියාගන්න බෑ. sout එකක් දාලා මගේ අනිත් යාළුවන්ට කියන්න මට ඉවසිල්ලක් නැතුව හිටියේ.

හැබැයි ඒ සතුට වැඩි වෙලා තිබ්බේ නෑ. මොකද එයා දැනගත්ත ගමන් මම එයාව inherit කරලා කියල එයා එයාගේ attributes සහ subroutines ටික private modify කරා. මාව නිකන් කරකවල අත්හැරිය වගේ මට දැනුනා. compiler එක දිගට හරහට මට errors වලින් ගහන්න පටන් ගත්ත. අන්තිමට බැරිම තැන මම මගේ inheritence එක අයින් කරා.

ඊට පස්සේ මම කොච්චර උත්සහ ගත්තත් වැඩේ හරි ගියේ නෑ. මගේ හිතට දරාගන්න බෑ වෙච්ච දේ. එත් මොනවා කරන්නද. මම නිකන්ම නිකන් code එකක් විතරනේ. මන් ගාවත් import කරපු ලොකු ලොකු library files තිබ්බ නම්, හොඳ වටිනා කියන class වලට inherit කරලා තිබ්බනම් අපටත් එයා වගේ හොඳ class එකක් ඇසුරු කරන්න තිබ්බා. එත් මොනවා කරන්නද.

හිත හදාගන්න අමාරු උනත්, අන්තිමට මම garbage collector එකට call කරලා මන් ගව තිබ්බ එයාගේ අන්තිම මතකය වුන null reference වෙච්ච object එක මගේ heap එකෙන් අයින් කරා… එය ගැන මගේ heap එකේ තිබ්බ අන්තිම මතකය කුරිරු garbage collector එකෙන් මකා දමන හැටි මම මගේ finalize() method එකෙන් බලන් ඉඳල හිත හදාගත්ත…

Spread the love!
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Viduranga Gunarathne

Related post