ElaKiri Programmer's Club

markhaloce

Member
Mar 7, 2013
10,298
677
0
17
The Real North
බෑනේ. හැබැයි මම exception throw කලේ නෑ. මොකද exception එකක් අවොත් method එක call කරන තැනින් handle wenawane. එහෙම වෙන්නේ න

උඹ තෲව් කරන්න ඕන්නෑ.. වෙන වෙන දාගන්න ෆන්ක්ශන් වලිං තෲව් වෙනවනෙ..
ඒත් උඹ කියන එක හරියට පැහැදිලි නෑ..
එග්සාම්පල් එකක් දියංබලන්න :eek:
 

DooA

Well-known member
  • Jun 22, 2011
    5,202
    773
    113
    ආගිය අතක් නැත
    උඹ තෲව් කරන්න ඕන්නෑ.. වෙන වෙන දාගන්න ෆන්ක්ශන් වලිං තෲව් වෙනවනෙ..
    ඒත් උඹ කියන එක හරියට පැහැදිලි නෑ..
    එග්සාම්පල් එකක් දියංබලන්න :eek:
    PHP:
    public void method_one(){
        try{
            method_two();
        }catch(MyException e){
            //if error handle here
        }
    }
    
    public void method_two(){
        method_three();
    }
    
    public void method_three(){
        method_four();
    }
    
    public void method_four(){
        method_five();
    }
    
    public void method_five(){
        //ERROR HERE
    }

    දැන් මචං මෙතන පස් වෙනි මෙතොඩ් එකේ exception එකක් ටොයින් වෙනවා.
    මෙතොඩ් ටික පිළිවෙලට call වෙන නිසා stack එක පටන් ගන්න තැන. ඒ කියන්නේ පලවෙනි method එකේ ඩි මම try catch එකක් දාලා තියෙන්නේ. එතකොට code එක break නොවී රන් වෙන්න එපැයි. එත් පස් වෙනි මෙතොඩ් එකේ exception එක නිසා code එක break වෙනවා
     

    sw7x

    Well-known member
  • Nov 12, 2007
    11,114
    2,296
    113
    ඇයි මචන් හුගක් එවුන් (ලපටි වගෙ ) exceptions යුස් කරන්නෙ නැත්තෙ..
    අනික තමයි කරාල පොඩ්ඩක් ප්‍රොග්‍රම් එක ස්ලො වෙනව (එක එච්ච්අම දැනෙන එකක් නෙමෙ)
     

    DooA

    Well-known member
  • Jun 22, 2011
    5,202
    773
    113
    ආගිය අතක් නැත
    ඇයි මචන් හුගක් එවුන් (ලපටි වගෙ ) exceptions යුස් කරන්නෙ නැත්තෙ..
    අනික තමයි කරාල පොඩ්ඩක් ප්‍රොග්‍රම් එක ස්ලො වෙනව (එක එච්ච්අම දැනෙන එකක් නෙමෙ)
    :confused::confused:
     

    හෙළයෙක්

    Well-known member
  • Apr 26, 2014
    48,558
    98,521
    113
    ඇයි මචන් හුගක් එවුන් (ලපටි වගෙ ) exceptions යුස් කරන්නෙ නැත්තෙ..
    අනික තමයි කරාල පොඩ්ඩක් ප්‍රොග්‍රම් එක ස්ලො වෙනව (එක එච්ච්අම දැනෙන එකක් නෙමෙ)
    e kiyane
     

    shyze

    Junior member
  • Dec 30, 2012
    199
    13
    18
    dll එක සී වලිං මිසක් චයිනිස් වලිං ලියන්නෑ නේ :baffled:
    ඔව්.. ඇහැක් වෙයි. :yes:
    මෙතඩ් වල නම් එහෙම චීනෙන් දීල නැත්තං හැබැයි :sorry:

    thanks mchn rply ekata.... :) mn ahuwe a methods tika hoyaganna widihak bn...samahara DLL thiyanawa neda encrypt karala.ahema unoth mkuth karaganna deyak nadda ?
     

    markhaloce

    Member
    Mar 7, 2013
    10,298
    677
    0
    17
    The Real North
    PHP:
    public void method_one(){
        try{
            method_two();
        }catch(MyException e){
            //if error handle here
        }
    }
    
    public void method_two(){
        method_three();
    }
    
    public void method_three(){
        method_four();
    }
    
    public void method_four(){
        method_five();
    }
    
    public void method_five(){
        //ERROR HERE
    }

    දැන් මචං මෙතන පස් වෙනි මෙතොඩ් එකේ exception එකක් ටොයින් වෙනවා.
    මෙතොඩ් ටික පිළිවෙලට call වෙන නිසා stack එක පටන් ගන්න තැන. ඒ කියන්නේ පලවෙනි method එකේ ඩි මම try catch එකක් දාලා තියෙන්නේ. එතකොට code එක break නොවී රන් වෙන්න එපැයි. එත් පස් වෙනි මෙතොඩ් එකේ exception එක නිසා code එක break වෙනවා

    උඹ කියන්නෙ මේ වගේ දෙයක්ද ??
    PHP:
    public void method_one(){
        try{
            method_two(); //මේක කෝල් කරද්දි එක්සෙප්ශන් එකක් එනව...
    
    Console.WriteLine("hello world"); //A
        }catch(MyException e){
            //if error handle here
        }

    ඔතනදි method_two() කෝල් කරද්දි එක්සෙප්ශන් එකක් එනව.. ඒ ආවට පස්සෙ A වලිං දක්වල තියෙන එක වැඩ කරන්නෑ... උඹට ඕනෙ ඒ ලයින් එකේ තියෙන දේත් වෙන්නද ??
     

    DooA

    Well-known member
  • Jun 22, 2011
    5,202
    773
    113
    ආගිය අතක් නැත
    උඹ කියන්නෙ මේ වගේ දෙයක්ද ??
    PHP:
    public void method_one(){
        try{
            method_two(); //මේක කෝල් කරද්දි එක්සෙප්ශන් එකක් එනව...
    
    Console.WriteLine("hello world"); //A
        }catch(MyException e){
            //if error handle here
        }

    ඔතනදි method_two() කෝල් කරද්දි එක්සෙප්ශන් එකක් එනව.. ඒ ආවට පස්සෙ A වලිං දක්වල තියෙන එක වැඩ කරන්නෑ... උඹට ඕනෙ ඒ ලයින් එකේ තියෙන දේත් වෙන්නද ??

    Na line A eka print novi catch ekata yannai one. Eth catch ekata yanne na. Program eka crash wenawa
     

    markhaloce

    Member
    Mar 7, 2013
    10,298
    677
    0
    17
    The Real North
    Na line A eka print novi catch ekata yannai one. Eth catch ekata yanne na. Program eka crash wenawa

    :shocked: ක්‍රෑස් වෙනව :shocked: :shocked: :shocked:
    එහෙම වෙන්න බෑනෙ බං :O
    උඹේ ඔය මෙතඩ් 1 කියන්නෙ උඹේ ප්‍රෝග්‍රෑම් එකේ රන් වෙන මේන් මෙතඩ් එකද ?
    මේන් මෙතඩ් එක නෙමේනං
    PHP:
    try
    {
    //code
    }
    cath{throw;}
    මෙහෙම දීල එක්සෙප්ශන් එක මේන් එකේදි විතරක් හැන්ඩ්ල් කරපං..
     

    DooA

    Well-known member
  • Jun 22, 2011
    5,202
    773
    113
    ආගිය අතක් නැත
    :shocked: ක්‍රෑස් වෙනව :shocked: :shocked: :shocked:
    එහෙම වෙන්න බෑනෙ බං :O
    උඹේ ඔය මෙතඩ් 1 කියන්නෙ උඹේ ප්‍රෝග්‍රෑම් එකේ රන් වෙන මේන් මෙතඩ් එකද ?
    මේන් මෙතඩ් එක නෙමේනං
    PHP:
    try
    {
    //code
    }
    cath{throw;}
    මෙහෙම දීල එක්සෙප්ශන් එක මේන් එකේදි විතරක් හැන්ඩ්ල් කරපං..

    Na ban windows phone app ekak. Ah mama second method eke exception throw karala na habai
     

    markhaloce

    Member
    Mar 7, 2013
    10,298
    677
    0
    17
    The Real North
    Na ban windows phone app ekak. Ah mama second method eke exception throw karala na habai

    try{}
    cath(Exception ex){//Handle}

    මෙහෙම කැච් එකෙන් අල්ලල හැන්ඩ්ල් කරන්නෙ මේන් මෙතඩ් එකේදි විතරයි බං.. නැත්තං අනික් මෙතඩ් වලනම් සාමාන්‍යයෙන් කරන්නෙ එක්සෙප්ශන් එක අල්ලල ආපහු ඒක තෲව් කරන එක :yes:
     

    prasad9805

    Well-known member
  • Feb 15, 2010
    18,718
    783
    113
    හඳේ
    avatar244887_11.gif
     

    DooA

    Well-known member
  • Jun 22, 2011
    5,202
    773
    113
    ආගිය අතක් නැත
    try{}
    cath(Exception ex){//Handle}

    මෙහෙම කැච් එකෙන් අල්ලල හැන්ඩ්ල් කරන්නෙ මේන් මෙතඩ් එකේදි විතරයි බං.. නැත්තං අනික් මෙතඩ් වලනම් සාමාන්‍යයෙන් කරන්නෙ එක්සෙප්ශන් එක අල්ලල ආපහු ඒක තෲව් කරන එක :yes:

    Ado man ehema ekak dnne na. Mama java walanokkoma exception try catch sanawa
     

    markhaloce

    Member
    Mar 7, 2013
    10,298
    677
    0
    17
    The Real North
    Ado man ehema ekak dnne na. Mama java walanokkoma exception try catch sanawa

    ඔය ක්‍රමෙන් ප්‍රශ්නෙ හරිද ? :)
    ජාව වල කොහොමද කලේ ? :eek:
    මම නම් ජාව වල කරන්නෙත් ඕකමයි.. මේන් එකේදි විතරක් හැන්ඩ්ල් කල්ල අනික්වගෙන් ගන්න එක්සෙප්ශන්ස් ඔක්කොම ආපහු තෲව් කරනව :yes: