Wednesday, February 24, 2016

Java Data Types And Variable Types

ඔන්න එහෙනම් කිව්වා වගේම java වල තවත් වැදගත් කොටසක් ගැන කියන්ඩ කියල හිතුව එක තමයි data type සහ variable types ගැන එහෙනම් වැඩේ පටන් ගම්මු.

Data Types

මම කලින් post එකේදී කිව්වා java කියන්නේ compile language එකක් කියල අපි ලියන code එක compile වෙනකොට compiler එකෙන් අපේ code එකේ තියන data store කරගන්ඩ compile time එකේදී memory allocate කරනවා ඉතින් එහෙම memory allocate කරනකොට මේ data එකට මෙච්චරක් allocate කරන්ඩ ඕනි මේ data එකට මෙච්චරක් allocate කරන්ඩ ඕනි කියල compiler එක දන්නේ නැ අන්න ඒ වෙලාවට තමි අපිට data type කියන එක වැදගත් වෙන්නේ එක නිසා අපි java වලින් programme එකක් ලියනවනම් එකේ ඇතුලේ අපි ලියන හැම data එකම data type එකත් එක්ක ලියන්ඩ ඕනි

java language එකේ data type වර්ග දෙකක් තියනවා primitive data type සහ object data type කියල අපි දැන් බලමු එකින් එකට තියන වෙනස්කම් මොනවද කියල..

primitive data types

primitive data type කියන්නේ මුලික data type වලට ඒ කිව්වේ තවදුරටත් කුඩා කොටස් වලට කැඩිය නොහැකි data. අපි සාමාන්යෙන් මේවගේ type use කරන්නේ ප්‍රමාණයෙන් කුඩා data එකක් store කරගන්ඩ උදාහරණයකට ඉලක්කම්, true, false value එකක් store කරන්ඩ වගේ.මේ ආකාරයේ primitive data type 8 java වල තියනවා.

  • byte                         
  • short
  • int
  • long
  • float
  • double
  • char
  • boolean
අපි දැන් බලමු මේ එක් එක් data type එකේ store කරන්ඩ පුලුවන් මොන වගේ data ද , කොච්චර memory ප්‍රමාණයක් store කරන්ඩ පුල්වන්ද කියා පොඩි පොඩි කරුණු ටිකක්.ලේසියට මම ඒ ටික පොඩි table එකකින් දාන්නම්.



object data type 

object data type එකක අපිට primitive type එකකට වඩා වැඩි data ප්‍රමාණයක් store කරන්ඩ පුළුවන්.object data type එක හැදෙන්නේ primitive data type කීපයක එකතුවකින් වෙන්ඩත් පුළුවන්.

හරි දැන් java data type ගැන දැන ගත්තනේ ඊළගට අපි තවත් වැදගත් මාතෘකාවකට බහිමු ඒ තමයි variable types. හරි එහෙනම් බලමු මොනවද මේ variable type කියන්නේ කියල.

Methods

java language එක ගත්තම ඒ ඒ variable එක තියන තැන අනුව variable type 4 ට බෙදල තියනවා දැන් අපි මේ එකින් එක උදාහරණ එක්කම අරන් බලමු.

1.method local variable

අපි variable එකක් method එකක් ඇතුලේ ලියල තියනවනම් ඒ වගේ variable එකකට තමයි method local variable කියන්නේ නම කියපු ගමන් ඒක තේරෙනවනේ. මේවගේ variable එකක් අපි හැදුවොත් අනිවාර්යෙන්ම value එකක් assign කරන්ඩම ඕනි.හරි දැන් අපි උදාහරණයක් බලමු.


පොඩි දෙයක් කියන්ඩ අමතක උන ඒක අව්ලක් වෙන්නේ නැ දැන් මතක තිය ගන්ඩකෝ java වල variable එකක් declare කරලා assign කරන්නේ (int i=10;) විදිහට කියල ඔය i කියන්නේ variable එකේ name එක int කියන්නේ අර කලින් කතා කරපු data type එක 10 කියන්නේ value එක. හරි දැන් මේ උදාහරනේ i කියන variable එක තියෙන්නේ main method එක ඇතුලේ මම ඊයේ කිව්වනේ main method එකත් normal method එකක් වගේමයි කියල ඉතින් method එක ඇතුලේ තියන නිසා මේක method local variable එකක්.මෙවැනි variable එකක් වලංගු වෙන්නේ method එක ඇතුලට විතරයි method එක එළියේ ඉදල access කරන්ඩ බැ.

2.block variable

මේකෙත් කියන්ඩ තරම් ලොකු වෙනසක් නැ method local වගේම තමයි අපි block එකක් ඇතුලේ variable එකක් හැදුවොත් එක block variable එකක් වෙනවා. මෙතැනදී එක වැදගත් දෙයක් කියන්ඩ තියනවා block variable එකක් වලංගු වෙන්නේ ඒ block එක ඇතුලට විතරයි.උදාහරණයක් පෙන්නුවහම හොදට තේරෙයි.

හරි දැන් දැක්කම බය වෙනද එපා ඔය දාල තියෙන්නේ for loop එකක් ඒ ගැන මම පස්සේ කතා කරන්නම්.for loop එක කියන්නේ යම්කිසි block එකක් ඉතින් ඔය i කියන variable එක define කරලා තියෙන්නේ අන්න ඒ block එක ඇතුලේ ඉතින් එක නිසා අපි i block variable එකක් කියල හදුන්වනවා.කලින් එක වගේමයි ලොකු වෙනසක් නැ.

3.static variable

මේකනම් කලින් දෙකට වඩා පොඩි වෙනසක් තියනවා අපි method එකකින් එළියේ ඒ උනාට class එකක් ඇතුලේ static කියන keyword එකත් එක්ක define කරන variable එකකට static variable එකක් කියනවා. මම main method එක ගැන කියනකොට කිව්වා නේද static keyword එක දාන්නේ අනිත් ඒවාට කලින් RAM එකට load වෙනඩ කියල මෙතනදීත් ඒක එහෙම්ම තමයි මේ static variable කලින් කිව්වා ඒවාට වඩා වෙනස් වෙන්නේ මේක load වෙන්නේ RAM එකට ඒක නිසා අපිට static variable ඒ class එකේ ඕනි තැනක ඉදල access කරන්ඩ පුළුවන්. දැන් අපි උදාහරණයක් බලමු.

4.instance variable

instance variable එකක් define කරන්නෙත් method එකකින් එළියේ class එකක් ඇතුලේ static වලින් වෙනස් වෙන්නේ මේක define කරනකොට static keyword එක දන්නේ නැ.මේකෙත් තියනවා වෙශේෂත්වයක් මම කිව්වනේ මේවා තියෙන්නේ class එකක් ඇතුලේ කියල මේ instance variable එකක් stack එකට load වෙන්ඩනම් ඒ class එකෙන් object එකක් හදන්දම ඕනි නැත්තන් මේ veriable එකෙන් වැඩක් ගන්ඩ බැ.

ඔය A a = new A(); කියල කරලා තියෙන්නේ A class එකෙන් object එකක් හදල තියන එක ඒක ගැන වැඩි විස්තර ඉදිරි post එකකින් කියන්නම්. දැන් පේනවා නේද මම කියපු දේ අපි instance variable එකක් විදිහට හදපු i සහ s main method එක ඇතුලේ access කරලා තියෙන්නේ හදපු object එකේ name එකෙන්(a.i සහ a.s) ඉතින් instance variable එකකකින් වැඩක් ගන්දනම් ඒ class එකෙන් object එකක් හදන්ඩම ඕනි.

හරි එහෙනම් අදට කියන්ඩ තියන ටික ඉවරයි ඓත් දවසක් java වල වැදගත් මාතෘකාවක් එක්ක එන්නම් අහ්හ්හ් අමතක කරන්ඩ එපා වැරදි තියනවනම් comment කරන්ඩ එහෙනම් ජය වේවා ......!!

8 comments: