Pages - Menu

Monday, March 25, 2013

J2SE - 02.1 Closer look at the First program

අද මම කියලා දෙන්න යන්නේ ගොඩක් අය නොලියපු දෙයක්.ඒ තමා කලින් ලිපියෙන් අපි කතා කල අපේ පලවෙනි ප්‍රෝග්‍රෑම් එක ගැන හැඳින්වීම .ලේසියටත් එක්ක ඒ ප්‍රෝග්‍රෑම් එක මම ආයේ දානවා.



අපි ලියපු එක ගොඩක් පොඩි ප්‍රෝග්‍රෑම් එකක්.ඒ වුනාට වැදගත් වගේම ගොඩක් ජාවා ප්‍රෝග්‍රෑම් වලට පොදු ලක්ෂණ කීපයක් එකේ තියෙනවා.
අපි ප්‍රෝග්‍රෑම් එකේ උ ඉඳං පහලට ලාගෙන එමු..
/*
This is a simple Java program.
Call this file "Example.java".
*/


මේ මොකක්ද? මේක කමෙන්ට්-comment එකක්.අනික් ක්‍රමලේඛන භාෂාවල වගේම ජාවාත් කමෙන්ට් වලට සපෝට් කරනවා.කමෙන්ට් කියන්නේ ඔයාගේ ජාවා කෝඩ් එක ගැන හරි වෙන යම් තොරතුරක් හරි කෝඩ් එක බලන කෙනාට දැක ගන්න සැලැස්වීම.ඒක කම්පයිලර් කම්පයිල් කරන්නේ නෑ.ඒ කියන්නේ අපේ අවුට්පුට් එකට ක වැටෙන්නේ නෑ.ජාවා වල කමෙන්ට් වර්ග 03 ක් තියෙනවා.බලමු ඒ මොනවද කියලා.
 01. Multiline comment
 02. Single-line comment
 03. Document comment



 01. Multiline comment
 මේක තමා උඩ තියෙන කමෙන්ට් එක.අපිට පුළුවන් ලයින් කීපයක් ලියන්න කම්පයිලට අහු නොවෙන්න.හැබැයි ලියන මොනදේ උනත් ලියන්න ඕනේ /* පටන් ගෙන */ ඉවර වෙන්න.මේ සලකුණු දෙක තුලේ තියෙන දේවල් කම්පයිලර් කම්පයිල් කරන්නේ නෑ.ඒ කියන්නේ අපේ අවුට්පුට් එකට එන්නෙත් නෑ.

 02. Single-line comment
ඒ කියන්නේ අපිට ලියන්න පුළුවන් එක ලයින් එකයි.කලින් වගේ ලයින් කීපයක් ලියන්න බෑ. ලියන්න පටන් ගන්න ඕනේ // යොදල.කමෙන්ට් එක ඉවර වෙන්නේ ලයින් එක ඉවර උනාම.ඊළඟ ලයින් එකට එහෙම ලියන්න බෑ.
// This is my first java programe
මෙන්න මේ වගේ.
 03. Document comment
අපි මේ ගැන තව ටිකක් ඉස්සරහට ගිහින් කතා කරමු.


හරි දැන් අපි යමු අපේ ප්‍රෝග්‍රෑම් එකට ආයේ.ඔයාලට පේනවා ඇති මෙන්න මෙහෙම ලයින් එකක්.
class Example {

මේකෙන් කියන්නේ class කියන කීවර්ඩ්-keyword එක පාවිච්චි කරලා අපි ක්ලාස් එකක් ඩික්ලෙයාර්(සෑදීම) කරන එක. Example කියන්නේ identifier එක.ඒ කියන්නේ ක්ලාස් එකේ හඳුනා ගැනීමේ නම.මේ ක්ලාස් එක යටතේ තමා අපි සියලුම කෝඩ්ස් ලියන්නේ.{ ලකුණෙන් ආරම්භවෙලා } ලකුණ හම්බෙනවා කියන්නේ ක්ලාස් එකේ සීමාව ඉවරයි කියන එක.ඒ තුල තමා සියලුම class members ලා ඉන්නේ.ඒක හරියට C/C++/C# වලදී වගේමයි.
ඊළඟට අපිට හම්බෙනවා මෙන්න මෙහෙම ලයින් එකක්.
public static void main(String args[]) {

දැන් බලමු ඒ මොකද්ද කියලා.අපි මේකට කියනවා main() method කියලා.මේ ලයින් එක ආරම්භ වෙන්නේ main() method එකෙන්.මෙතනින් තමා ප්‍රෝග්‍රෑම් එක දුවන්න ගන්නේ.හැම ජාවා ප්‍රෝග්‍රෑම් එකම රන් වෙන්න පටන් ගන්නේ මේ main() එකට කතා කරලා තමා.ලොකු හැඳින වීමක් දැන්මම දෙන්න බෑ.තේරුම් ගන්න අමාරුයි.පස්සේ බලමු ඒ ගැන.අපි දැන් මේකේ වචනයක් වචනයක් ගානේ ගිහින් බලමු මොනවද මේ කියලා.මේ දේවල් හැඳින්වීමක් කරන්නේ.බයවෙන්න එපා නොතේරුනාට.
public කීවර්ඩ් එකට අපි කියනවා access specifier කියලා.ක්ලාස් එකක් ඇතුලේ තියෙන මෙම්බර්ස්ලව පෙනෙන නොපෙනෙන එක පාලනය කරන්නේ මෙන්න මේ වචනෙන්. මේ public කීවර්ඩ් එකෙන් අපේ මෙම්බර්ස් ලව ලියලා තියෙන ක්ලාස් එකෙන් එලියට පෙනෙනවා.එකේ අනික් පැත්ත තමා private.මේක යෙදුවම ක්ලාස් එකෙන් එලියට මෙම්බර්ස්ලව පෙනෙන්නේ නෑ.හැබැයි මේ main() method එක public වෙන්න ඕනේ.මොකද කෝඩ් එක රන් වෙන්න පටන් ගන්න කොට ක්ලාස් එකෙන් එළියේ ඉඳලා ක්ලාස් එකට ඇතුල් වෙන්න ඕනේ හන්දා.ඊළඟට static කියන කීවර්ඩ් එක ඉන්ටප්රිටර්ට ඕනේ වෙනවා ඔබ්ජෙක්ට්ස් මොකුත් හදන්නේ නැතුව main() method එකට කතා කරන්න(call) කරන්න.void එකෙන් කම්පයිලර්ට කියනවා main() method එකෙන් අගයක් (value) රිටන් වෙන්නේ නෑ කියලා.ඒවගේම පස්සේ ඔයාල දකී value return methods එහෙමත්.අවුල් වගේ උනත් අවුලක් ගන්න එපා.මම ඉන්නවනේ කියලා දෙන්නම් පස්සේ.
ජාවා ඇප්ලිකේෂන් එක පටන් ගන්න කොටම main()එකට කෝල් කරලා තමා පටන් ගන්නේ.ළමායි.. මේ main සහ Main සම්පුර්නෙන්ම වෙනස්.main වෙනුවට Main එහෙම ලිව්වොත් මළා තමා.මම මුලින්ම කිව්වනේ ජාවා case-sensitive කියලා.ඒවගේම main() method නැති ප්‍රෝග්‍රෑම් කම්පයිලර් කම්පයිල් කරනවා අවුලක් නැතුව.ඒ කියන්නේ ක්ලාස් ෆයිල් එක හදනවා අවුලක් නැතුව.හැබැයි ඉන්ටප්රිට් කරන්න ගියාම error එකක් දෙනවා main() method එකක් නෑ කියලා.ඒ කියන්නේ main වෙනුවට Main ලිව්වම ඒක main() method එකක් වෙන්නේ නෑනේ.අපි ලියලා තියෙන්නේ වෙන බයිලයක්නේ.එවුනාට කම්පයිලර් කම්ප්යිල් කරනවා.ඉන්ටප්රිටර් වැඩේ අනාගන්නවා.මොකද එයාට main() method එකක් ඕනේ.හම්බුනේ නැති උන ගමන error එකක් දාල එයාගේ සද්දේ දානවා.
අපිට ඕනේ උනොත් method එකට මොනවා හරි දත්ත ලබා දෙන්න ඒවා ගන්නේ () ලකුණු ඇතුලෙ තියෙන වෙරියබල්ස්-variables.වෙරියබල්ස් කියන්නේ දත්ත රඳවාගන්න පුළුවන් කට්ටියක් කියලා හිතන්නකෝ.අපි මෙයාලට විශේෂයෙන් කියනවා පැරාමීටර්ස් (parameters) කියලා.එහෙම පැරාමීටර්ස් අපි දෙන්නේ නැත්නම් () වරහන් දෙක දාලා ඇතුලේ මොකුත් ලියන්නේ නැතුව තියෙනවා.අපේ කෝඩ් එක ගත්තොත් () ඇතුලේ තියෙනවා මෙන්න මෙහෙම එකක්.
String args[]

ඒ කියන්නේ එක පැරාමීටර්ස් එකක් තියෙනවා
args කියලා.ඒක String කියන ක්ලාස් එකේ ඇරේ-array එකක්.ඇරේ එකක් කියන්නේ එකම ආකාරයේ ඔබ්ජෙක්ට්ස්
රඳවන ආකාරයක්.මේ ඇරේ එක අයත් වන්නේ ස්ට්‍රින්-String කියන ක්ලාස් එකට හන්දා මේක ස්ට්‍රින් ඇරේ-String array එකක්.ස්ට්‍රින් කියන ආකාරයට රඳවන්න පුළුවන්, අකුරු වලින් (characters) වලින් හැදුනු වචන.අපි මේ ස්ට්‍රින්ග් ඇරේ ගැන පස්සේ ලොකුවට බලමු.මෙන්න මේ args කියන කෙනා කෝඩ් එක රන් වෙන කොට අපි කමාන්ඩ් ලයින් එකේදී දෙන argument ලබාගැනීම සිදු කරනවා.ඒක එයා රඳවා ගන්නවා.නමුත් මෙතැනදී අපි argument එකක් දීල නැහැ.ඒත් වෙන වෙලාවල් වල අපිට දෙන්න පුළුවන්.ඊළඟට මේ main() method ලයින් එකේ අගදී හම්බෙනවා { ලකුණ.මේකෙන් කියන්නේ main() method එකේ සිමාව ආරම්භ වෙන බව.ඇයි වරහන ඇරිලානේ තියෙන්නේ..එක ඉවරවෙන්නේ අයෙ වැහුණු } වරහනක් හම්බුනාම.
ඒවගේම තමා කෝඩ් එකකට classes එකකට වඩා තියෙන්න පුළුවන්.හැබැයි එක ක්ලාස් එකකට විතරයි මේ විදියට main() method එකක් ලියන්නේ.
අපිට එන ඊළඟ ලයින් එකේ මෙන්න මෙහෙම එකක් තියෙනවා නේද?

System.out.println(“Hello World ”) ;
මේක තියෙන්නෙත් අපේ main() method එකේ සිමාවේ.මොකද වැහුණු } එකක් අපිට තාම හම්බුනේ නෑනේ.මේකෙන් තමා අපේ Hello World ප්‍රින්ට් කරලා දෙන්නේ කමාන්ඩ්ලයිනය තුල.ඇත්තටම මේක කරන්නේ ජාවා තුල තියෙන println() method එක මගින්.මෙයාල එක එක ජාතියේ වැඩ අපිට කරලා දෙනවා.println() method ඒකෙන් අපිට අපි දෙන දෙයක් ප්‍රින්ට් කරලා දෙනවා.එතකොට මොනවද මේ System.out කියන්නේ? System කියන්නෙත් ජාවා තුල හදලා තියෙන ක්ලාස් එකක්. out කියන්නේ මෙන්න මේ ක්ලාස් එකේ පාලනයට අපි ඇතුලත්වෙන output stream එක.අපි කියනවා console input and output methods කියලා.අද නම් මේවා එතරම් භාවිතා වෙන්නේ නෑ.මොකද මේවා යොදා ගන්නේ ප්‍රාථමික චුටි කෝඩ්ස් වලට තමා.මං පස්සේ කියන්නම් ඇඩ්වාන්ස් විදියට මේ වැඩේ, ඒ කියන්නේ අවුට්පුට් එක ගන්න විදිය.ඒ ගැන ගණන් ගන්න එපා.හැඳින්විමනේ කරන්නේ.
දැන් මේ println() අග දකින්න හම්බෙනවා නේද ; ලකුණ.අපි කියනවා ස්ටේට්මන්ට්ස්-statements කියලා මේ වගේ ලයින් වලට.ජාවා වල හැම ස්ටේට්මන්ට් එකක්ම ; ලකුණෙන් අවසන් කරන්න ඕනේ.ක නීතියක්.ක නැති උනොත් කෝඩ් එක වැරදෙනවා. ; ලකුණ සඳහන් නොවෙන අනික් ලයින් අපි ස්ටේට්මන්ට්ස් විදියට සලකන්නේ නෑ.ඒ හන්දා ස්ටේට්මන්ට්ස් වලට අනිවාර්යෙන් ; ලකුණ දාන්න ඕනේ.
අපිට ඊළඟ ලයින් එකේ හම්බෙනවා වැහුණු } ලකුණ.මේ කියන්නේ අන්තිමටම උඩින් අපි ඇරපු { ලකුණේ සිමාව ඉවරවෙනවා කියන එක.ඒ තමා main() method එකේ සිමාව.
ඊළඟට අපිට ආයේ හම්බෙනවා වැහුණු } ලකුණක්.මේකෙන් කියන්නේ උඩින් ඇරපු { ලකුණෙන් ආරම්භ උන ක්ලාස් එකේ සිමාව ඉවර වෙනවා කියලා.ඔන්න ඔහොමයි ඕකේ විස්තරේ ආයේ තව පොඩි ප්‍රෝග්‍රෑම් එකකින් හම්බෙමු.

No comments:

Post a Comment