ኮምፒውተሮችፕሮግራም

ጃቫን: የማይካተቱ እና አያያዝ

ማንኛውም ፕሮግራም ምንጭ ኮድ የተወገደለት ከሆነ ብቻ ነው stably ያካሂዳል, ያልተጠበቁ ሁኔታዎችን ሊያስከትል የሚችል ምንም ሁኔታ የለም. በተቻለ ውድቀቶች የምታጠምድ ያለው ሂደት ፕሮግራም መድረክ ላይ እየታየ ነው. ይህንን ለማድረግ, ገንቢው ሁሉ የሚጠበቀው ውጤት ከግምት የሚወስደው እና የፕሮግራሙ ክወና ላይ ጣልቃ, ወይም ሰብስብ ሊመራ አልቻለም በጣም ስህተት ውጤት ለመገደብ ይሞክራል.

እርስዎ የማይካተት ሊያስፈልግህ ይችላል መቼ

የጃቫ ውስጥ, አንድ በስተቀር, የተሳሳተ የተጠቃሚ ግብዓት አንድ ሀብት ወይም በድንገት በአውታረመረብ ግንኙነት ፕሮግራም አያስፈልግም ሊከሰት ይችላል. የማመልከቻ ገንቢ የተፈጠሩ ምቹ አጠቃቀም ያህል, አስቸኳይ ሁኔታዎች እንዳይከሰት መቆጣጠር አለበት. ወደ የሸማች አንድ unhandled በስተቀር, ወይም የሆነ ችግር ተፈጥሯል በመግለጽ ይመስላል መልእክት ብቻ አካል ምክንያት ውሂብ ማጣት, አንድ መተግበሪያ ለማቆም መጠበቅ የለበትም.

ጃቫ የማይካተቱ አያያዝ

ምን ከግምት? የጃቫ ቋንቋ የራሱ አብሮ-ውስጥ የማይካተት ተግባር አለው. እርግጥ ነው, ስህተት የሆነ ትልቅ መቶኛ ሌላ ማጠናቀር ደረጃ በ ተነጠቀ ነው, ስርዓቱ በራስ ከአሁን ወዲያ የሚቻል መሆኑን አጠቃቀም ያሳውቃል. ነገር ግን የሚፈጀውን ላይ የሚከሰተው መሆኑን በስተቀር ይህን ዓይነት አለ. ገንቢው ይህን ሊያነሱ እና ስህተት ሊያስከትል ነበር ስለዚህም ኮዱን መንደፍ መቻል, እና ልዩ በሆነ መንገድ አቀረበው ሌላ ቅርንጫፍ ወደ ቁጥጥር አሳልፎ ይገባል.

የጃቫ ውስጥ, ይህ ልዩ ለመያዝ ወደ አጠናቃሪ በጣለው ነው, ስለዚህ የተለመደው ችግሮች ይታወቃሉ እና መደበኛ የአካል እንቅስቃሴ ቅጦችን አላቸው.

የተለመደ አለማካተቶች

ይህ ክፍል - አንድ ለየት ማግኘት የሚችሉበት ቀላል ምሳሌ,. በውስጡ ቀለል ቢኖርም, አንፃር, አንድሆን እንደ ስህተት ያስከትላል ይህም ከዜሮ, ሊሆን ይችላል. ደህና, የሚቻል ከሆነ ባለፉት መከሰታቸው መተንበይ እና ለመከላከል. ነገር ግን ይህ አማራጭ ሁልጊዜ አይገኝም, ስለዚህ በስተቀር የምታጠምድ "በዜሮ መከፋፈል" ያለውን ክስተት ውስጥ በቀጥታ የተደራጀ መሆን አለበት.

የመስራት ስህተት ለመጥለፍ የ Java ዘዴ ይህን ይመስላል:

  • ቁልል ልዩ ነገር እንዲሁም ከማንኛውም ሌላ እንደ የተፈጠረ ነው;
  • ፕሮግራሙ ተፈጥሯዊ አካሄድ ተቋርጠዋል ነው;
  • አግላይ ዘዴ ኮዱን ለመቀጠል አንድ አማራጭ መንገድ ለማግኘት እየሞከረ ነው;
  • የ አካሂያጅ, ሥራ ውስጥ የፕሮግራሙ አስተማማኝ የቅጣት ያግኙ ወይም ወደነበረበት, ወይም ልዩ መንገድ በስተቀር መካከል እውን ይከሰታል.

ይህን ይመስላሉ ይችላል ስህተት የመፍጠር ቀላሉ ምሳሌ:

ከሆነ (ሀ == አልቦ)

) (አዲስ NullPointerException ጣል;

በዚህ ስፍራ, ተለዋዋጭ የሆነ መነሳት ላይ ምልክት, ማለትም, አይደለም አንድ አልቦ ነገር ወደ ማጣቀሻ እንደሆነ. ይህ ሁኔታ አልተነሣም እና ልዩ አያያዝ ያስፈልጋቸዋል ከሆነ, አንድ ልዩ የሆነ ውርወራ አዲስ NullPointerException በ ይጣላል ነው ().

ቁልፍ ቃላት ስለ ጥቂት ዝርዝሮች

የማይካተቱ ጋር ባለን ግንኙነት ወቅት አንድ የተወሰነ እርምጃ ለማመልከት ቁልፍ ቃል ጃቫን መጠቀም ብዙውን ጊዜ አስፈላጊ ነው. ያላቸውን አምስት ፕሮግራም ይህ ቋንቋ:

  • ይሞክሩ. ይህ ቁልፍ ቃል ነው አስቀድሞ ያሟላል, እና አንድ ለየት መጣል የሚችል ኮድ አንድ ክፍል ውስጥ አንድ ሽግግር ማለት ነው. አግድ ውስን ቅንፎች {}.
  • ካች. ይህም የተፈለገውን በስተቀር አይነት የሚጠልፍ እና በአግባቡ መያዝ.
  • በመጨረሻም. ይህ ቁልፍ ቃል ምንም በስተቀር ተያዘ አይደለም እንኳ አማራጭ ነው እና ለማንኛውም አስፈላጊ ነው ይህም ኮድ, የተወሰነ ቁራጭ ለማከናወን ጥቅም ላይ ይውላል. ሙከራ የማገጃ በኋላ በቀጥታ ታክሏል.
  • ጣል - ከማንኛውም ቦታ ሆነው ጃቫ የማይካተቱ ለመፍጠር ያስችልዎታል.
  • ከደፋ - ዘዴ ፊርማ ውስጥ ከተቀመጠ አንድ ቁልፍ ቃል. ይህም የሚከተሉትን ኮድ የዚህ አይነት የጃቫ አንድ በስተቀር መጣል ይችላሉ ማለት ነው. ከእሱ የሚጠበቀውን እንደ ዘዴ አይሰራም ይችላሉ - በዚህ ምልክት ሊዘነጋ ይገባል ገንቢዎች ምልክት ሆኖ ያገለግላል.

አንድ ሙከራ ጋር የምታጠምድ

ጃቫ የማይካተቱ ወደ መለቀቅ, በተፈጥሯቸው አንድ ልዩ መንገድ የሚያዘው ይደረጋል ይገምታል. ኮድ ክፍል አንድ የማገጃ ውስጥ ጠፍቷል ምሽጎች ከሆነ በጣም ምቹ መንገድ, ማድረግ. ይህም አንድ ለየት ሊይዝ ይችላል. ይህን ኮድ አሂድ ጊዜ, ምናባዊ ማሽን, አንድ ያልተጠበቀ ሁኔታ ማግኘት በዚያ ወሳኝ የማገጃ ነው እና ሽግግር ሂደት ጋር ጣቢያው የሚቆጣጠሩ መረዳት ይሆናል.

የ Java ኮድ አንድ ለየት ያለ ሊሆን ይችላል ውስጥ ልዩ የማገጃ ሙከራ, ተጠቅልሎ ነው. በመሆኑም በአንድ ቦታ ሳይሆን raspolzayas ኮድ ውስጥ ይያዛሉ በርካታ ያልተጠበቁ ሁኔታዎች አደረግን.

በስእሉ እንደሚታየው ፕሮሰሲንግ ዩኒት እጅግ ዓይነተኛ ኮድ ነው:

{ይሞክሩ

// እዚህ ላይ አንድ ለየት ያለ ማመንጨት የሚችሉ አንዳንድ ኮድ ነው

} ካች (Tip_isklyucheniya_1 identifikator_1) {

// እዚህ የማይካተት አለ, በውስጡ ዓይነት ሁኔታዎች መሠረት;

} ካች (Tip_isklyucheniya_2 identifikator_2) {

// እዚህ የማይካተት አለ, በውስጡ ዓይነት ሁኔታዎች መሠረት;

}

የቁልፍ መያዝ ይህም በውስጡ አይነት የሚያከብር መሆኑን የቀረቡ ከታች እንደተገለጸው, ሊደረግላቸው ይገባል ኮድ ሪፖርት, እና አንድ ልዩ ለ ለመቃኘት. የ መለያ እሴቶች እንደ ኮድ የማገጃ በማስኬድ ላይ ሊውል ይችላል.

በመጨረሻም

ይህም ካለፈው ምዕራፍ ከ ግልጽ ሆነ እንደ, መስህብ ያግዳል የማይካተቱ ለመያዝ እና እነሱን ማስኬድ. ነገር ግን በጣም ብዙ ጊዜ ሁኔታ ምንም ይሁን ምን እነዚህ ስህተቶች ተያዘ ነበር አልሆነ, አንዳንድ ኮድ ማስኬድ አለበት የት ይነሳል. ለዚህ በመጨረሻ ቁልፍ ቃል አለ. ይህም ፋይሎችን ወይም የአውታረ መረብ ግንኙነቶች መዝጋት, የተለያዩ ባንኮኒዎች እሴቶች ለማሳደግ ጥቅም ላይ ይውላል.

ይህ ሴራ በርካታ መስህብ ብሎኮች ዘዴዎች የማይካተቱ ያጠምዳሉ የፈለሰፉት ያቀርባል. ለምሳሌ ያህል, በ ሙከራ ውስጥ የተካተቱ ኮድ ቀዝቃዛ የመሳሰሉ ባልተጠበቀ ሁኔታ ይፈጥራል. ከዚያም መስሪያ «! ቀዝቃዛ ይነጠቃሉ» አገላለጽ ይታያል ይደረጋል «ነገር ስለ? እንዲያጨበጭቡ እንደሆነ ነው». ይህ በመጨረሻ የማገጃ በማንኛውም ሁኔታ ውስጥ የሚያስፈጽምበትን ነው.

እንዲያውም, አንድ መንገድ በመጨረሻ በዚያ መጠቀማቸውን ማስወገድ. ይህ ምናባዊ ማሽን መጠናቀቅ ጋር የተገናኘ ነው. ይህ እንዴት መተግበር እንደሚቻል ይወቁ, ይህም በኢንተርኔት ክፍት ቦታዎች ላይ የሚቻል ነው.

ውርወራ ቁልፍ ቃል

ውርወራ የሚፈቀድበት ሁኔታ ይፈጥራል. እንደሚከተለው በውስጡ አገባብ ነው:

) (አዲስ NewException ጣል;

ዓይነት NewException አዲስ ልዩ አሉ የተፈጠረ ነው (). መጠቀም ይቻላል አንድ አይነት አስቀድሞ መደበኛ የ Java ቤተ መጻሕፍት ክፍሎች ውስጥ የተካተተ ሲሆን ቀደም ሲል በራሱ ምርት ገንቢው የተገለጸ ነው እንደመሆኑ.

ይህ ንድፍ ጥሪ ከዚያ ለመጥለፍ መቻል ሲሉ, ወደ ሙከራ የማገጃ ውስጥ ሊከሰት ያለበት ማናቸውም ዘዴ መግለጫ, አካል ነው.

ቁልፍ ቃል አውጥቶ ይጥላል

ምን ዘዴ አንድ ለየት መወርወር, ነገር ግን በአግባቡ ማስተናገድ አይችሉም የሚችሉበት ሁኔታ ልማት ሂደት ውስጥ ከሆነ. ይህን መጨረሻ ድረስ, በ ዘዴ ፊርማ ውስጥ ቃል አውጥቶ ይጥላል እና በተቻለ የማይካተቱ አይነት ይገልጻል.

ይህ መለያ ዘዴ ያላቸውን ተመሳሳይ ልዩ ማስተናገድ የሚችል እንዳልሆነ ደንበኛው ገንቢዎች ጠቋሚ አንድ ዓይነት ነው. የስህተት አይነት ከተመረጠ በተጨማሪ, ከዚያም አጠናቃሪ በግልጽ ማስገደድ ያደርጋል መጠየቅ.

ሀብቶችን ይሞክሩ

የ Java ስሪት 7 ገንቢዎች ሀብቶች ጋር ሕክምና ሙከራ የማገጃ እንደ ዋነኛ ፈጠራ, አካትተዋል.

አጠቃቀም ሃብቶች ለመቆጠብ መዝጋት ይገባል በኋላ ብዙ ነገሮች, ጃቫ ውስጥ የተፈጠሩ ናቸው. ቀደም የመለያ ወደ ይህንን ውሰድ እና በእጅ እነዚህን አጋጣሚዎች ለማቆም ነበር. አሁን ግን, እነርሱ AutoClosable በይነገጽ ታየ. ይህም በራስ ሞክር የማገጃ ውስጥ ይመደባሉ አስቀድሞ ጥቅም ነገሮችን መዝጋት ይረዳል. ይህ አቀራረብ በኩል በውስጡ ተነባቢነት በከፍተኛ ሁኔታ ጨምሯል ነው በ ኮድ መጻፍ ይበልጥ አመቺ ሆኗል.

የራሱን ክፍሎች ጃቫ የማይካተቱ

የ በተገለጸው የፕሮግራም ቋንቋ ፈጣሪዎች ድንገተኛ ንድፍ አይነቶች መለያ በርካታ ገጽታዎች ወደ ወሰደ. ይሁን እንጂ አማራጮች ሁሉ የጃቫ የራሳቸውን የማይካተቱትን ለመግለጽ ችሎታ ተግባራዊ ውስጥ እንዲሁ ክስተቶች ውጤት, አይሰራም ለመከላከል, ይህም በተለይ ኮድ ፍላጎት ተገቢ ነው.

ቀላሉ መንገድ ለመፍጠር - ዒላማ አውድ በጣም ተገቢ ከ እንዲወርሱ.

, የተለየ ከ ለመውረስ የራስዎን የማይካተቱትን ለመግለጽ ጥቅም ላይ ያለውን ክፍል አለ ተከሰተ. በነባሪ, ሁለተኛው - - መከራከሪያ msg አይነት ሕብረቁምፊ ጋር MyException ውስጥ ሁለት constructors አሉት.

ከዚያም ፊርማ የያዘውን የሕዝብ በክፍል FullConstructors በሥራ ዘዴ ረ ውስጥ MyException ይወረውራል. ይህ ቁልፍ ቃል ረ ጃቫ MyException በስተቀር እንደ መጣል ይችላሉ ማለት ነው. በተጨማሪም, በ ስልት አካል ውስጥ ውርወራ በማድረግ ኮንሶል እራሱን እና ትክክለኛ ትውልድ MyException, ወደ የጽሑፍ መረጃ ውፅዓት አፍርቷል.

ሁለተኛው ዘዴ የምታጠምድ ላይ መሥሪያ ውስጥ ይንጸባረቃሉ ይህም አንድ በስተቀር ሲፈጥሩ, አንድ ሕብረቁምፊ ግቤት አልፈዋል ነው የመጀመሪያው, በመጠኑ የተለየ ነው. በዋናው ውስጥ f () እና g () ሞክር ምልከታ ውስጥ ይመደባሉ እና ቁልፍ ቃል መያዝ MyException ለመያዝ የተዋቀረ እንደሆነ ግልጽ ነው. ሂደት ውጤቱ መሥሪያ የስህተት መልዕክት ለማሳየት ነው:

እንደዚሁ በራሱ እጅ, Java የማይካተቱ ለማከል መጣ.

አርኪቴክቸር የማይካተቱ

ጃቫ ውስጥ ሁሉም ነገሮች ጋር እንደ የማይካተቱ ደግሞ በውርስ እና ተዋረዳዊ መዋቅር ያላቸው ናቸው. በዚህ ፕሮግራም ቋንቋ ውስጥ ይጣላል ሁሉ ስህተቶች ሥር ኤለመንት ክፍል java.lang.Throwable ነው. ከእርሱም ሁለት ዓይነት ከወረሱት - ስህተት እና ለየት.

ስህተት - የ ወሳኝ ስህተት የሚጠቁመው እና ካልተደረገበት ጃቫን የማይካተቱ ነው. በአብዛኛው ጉዳዮች ላይ መጥለፍ እና ሂደት እንደዚህ ውሂብ ንድፍ ደረጃ ላይ የሚከሰተው ሳይሆን በመጨረሻው ትግበራ ኮድ ውስጥ በማስተዋወቅ ያስፈልጋቸዋል.

በመፍጠር እና የማይካተቱ በመተንተን ለማግኘት በብዛት ጥቅም ክፍል ለየት ያለ ነው. ይህም በተራው, RuntimeException ጨምሮ በርካታ ቅርንጫፎች, የተከፋፈለ ነው. RuntimeException በ በፕሮግራሙ ወቅት እየተከሰተ, ይህም ማለት, የሚፈጀውን የማይካተቱ ናቸው. ይህ የመጣ ሁሉም ትምህርቶች unverifiable ናቸው.

አብዛኛውን ጊዜ ለየት ያሉ አሉ

ጃቫ የማይካተቱ ውስጥ, ይህም ዝርዝር እርስዎ በዝርዝር ከእነርሱ እያንዳንዳቸው መግለጽ ይኖርበታል ስለዚህ, አብዛኛውን ጊዜ ጥቅም ላይ ናቸው, ከዚህ በታች ቀርቧል:

  • ArithmeticException. እነዚህ የስላት ክወናዎች ጋር የተያያዙ ስህተቶች ያካትታሉ. በጣም የሚጐዱ ምሳሌ - በዜሮ ክፍፍል.
  • ArrayIndexOutOfBoundsException - በውስጡ ርዝመት ጠቅላላ በላይ ያለውን የድርድር አባል ቁጥር ይግባኝ.
  • ArrayStoreException - በድርድሩ ያለ ያልተጣጣመ አባል አይነት የመመደብ ሙከራ.
  • ClassCastException - ወደ ሌላ ወደ ስህተት አንድ አይነት ለማምጣት ሙከራ.
  • IllegalArgumentException - ዘዴ ጥሪ ውስጥ የተሳሳተ ክርክር በመጠቀም.
  • NegativeArraySizeException - አንተ አሉታዊ መጠን ድርድር ለመፍጠር ጊዜ የሚፈቀድበት.
  • NullPointerException - ማጣቀሻዎች አለአግባብ ሊዘጋጁ.
  • NumberFormatException - የተሳሳተ ሕብረቁምፊ ልወጣ ኢንቲጀር ጊዜ የሚከሰተው.
  • UnsupportedOperationException - ክወና አይደገፍም.

እነዚህ ምሳሌዎች ካልተደረገበት ጃቫ የማይካተቱ አይነቶች ይወክላሉ. ነገር ግን እንዲሁ በተደረገባቸው እነሆ:

  • ClassNotFoundException - ክፍል አልተገኘም.
  • IllegalAcccessException - ለክፍሉ መዳረሻ መገደብ.
  • InterruptedException - የ ፍሰት መቋረጥ.
  • NoSuchFieldException - ምንም የሚያስፈልግ መስክ የለም ናቸው.

የ የማይካተቱ ፍች

ብዙ ጊዜ አጋጥሞታል የማይካተቱ መካከል መናገር ንድፍ ውስጥ ያላቸውን ትርጓሜ, ትክክል አውቆ ሊሆን እንደሚችል መታወቅ አለበት. ቀጥሎ ባልተጠበቀ ሁኔታ ሊኖር ይችላል የት ተጨማሪ ዝርዝር ውስጥ የሚገልጽ አጭር ዝርዝር ነው.

NullPointerException. አንድ ልዩ ሁኔታ አለ ጊዜ በጣም የመጀመሪያው ጉዳይ ሊዘጋጁ እኩል የሆነ ነገር ማጣቀሻ ላይ ይግባኝ ለማለት ነው. በተጨማሪም ዜሮ ክፍል ለምሳሌ ዘዴዎችን የሚያቅፍ ነው. NullPointerException እኩል ርዝመት አልቦ ድርድር ለማግኘት ሁኔታ ውስጥ ይጣላል ይችላል. በየጊዜው ብዛቱ ላይ ጣቢያዎች ላይ ምልክት ይሆናል እንደዚህ ሁኔታዎች ለመራቅ.

ArrayIndexOutOfBoundsException. ማንኛውም ፕሮግራም አደራደሮች አጠቃቀም ያለ ሊኖር አይችልም. በዚህ መሠረት, በሱ ላይ ተደጋጋሚ መርጊያው ማመንጨት እና ስህተት ይችላሉ. ገንቢ የ ጠቋሚ ዝርዝር ውስጥ ያልሆነ ድርድር አባል ለመድረስ ሲሞክር ለየት የሚከሰተው. ለምሳሌ ያህል, የተጠየቀው ዋጋ በላይ ወይም ከዜሮ ርዝመት በታች ነው. በጣም ብዙ ጊዜ በድርድሩ ውስጥ ዜሮ ነጥብ ጋር የሚጀምረውን ሐቅ ውጤት ነው.

ግኝቶች

ጃቫ የማይካተቱ አያያዝ - እጅግ በፕሮግራም ሥራ የሚያመቻች እና እሱን ንጹህ እና ኮድ ስህተቶች አልባ የሆነ ለመፍጠር ያስችላቸዋል ኃይለኛ መሣሪያ አካባቢ,. እንዴት ለስላሳ እና የተረጋጋ functioning ማመልከቻ ላይ ገንቢ ሁኔታን እና ዝና ላይ ይወሰናል.

እርግጥ ነው, የበለጠ ወይም ያነሰ ቀላል ፕሮግራሞች ውስጥ ያልተለመደ ሁኔታዎች በጣም ቀላል ብንችል. ነገር ግን ሺህ መቶ በጥቂት መስመሮች ትልቅ ሰር ሕንጻዎች ውስጥ ብቻ የረጅም መሞከሪያ እና ማረም የተነሳ ይቻላል.

እነርሱ ወዳጆች ማግኘት ጊዜ አንዳንድ መተግበሪያዎች ውስጥ ሊነሳ ይህም ከ የጃቫ በስተቀር ስህተት ያህል, አንዳንድ ኩባንያዎች ሽልማት ይሰጣሉ. በተለይ የደህንነት ፖሊሲ ሶፍትዌር ጥሰት የሚያስከትሉ ሰዎች አድናቆት.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 am.delachieve.com. Theme powered by WordPress.