ಕಂಪ್ಯೂಟರ್ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಜಾವಾ: ವಿನಾಯಿತಿಗಳನ್ನು ಮತ್ತು ಅದರ ನಿರ್ವಹಣೆ

ಯಾವುದೇ ಪ್ರೋಗ್ರಾಂ ಮೂಲ ಕೋಡ್ ದೋಷಸೂಚಿಸುತ್ತಿರುವಂತೆಯೇ ಮಾತ್ರ ಅಲುಗಾಡದಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ, ಮತ್ತು ಊಹಿಸಲಾಗದ ಸಂದರ್ಭಗಳಲ್ಲಿ ಕಾರಣವಾಗಬಹುದು ಯಾವುದೇ ನಿಯಮಗಳು ಇವೆ. ವಿಫಲತೆಗಳ ಸಾಧ್ಯತೆಗಳನ್ನು ಹಿಡಿಯುತ್ತಿರುವ ಪ್ರಕ್ರಿಯೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ವೇದಿಕೆಯಲ್ಲಿ ಕೈಗೊಳ್ಳಲಾಗುತ್ತದೆ. ಇದನ್ನು ಮಾಡಲು, ಡೆವಲಪರ್ ಖಾತೆಗೆ ಎಲ್ಲಾ ನಿರೀಕ್ಷಿತ ಫಲಿತಾಂಶಗಳ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ತನ್ನ ಕುಸಿತ ಕಾರ್ಯಕ್ರಮದ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಅಡ್ಡಿಯಾಗಬಹುದಾದ, ಅಥವಾ ಎಷ್ಟು ದೋಷದ ಪರಿಣಾಮ ಮಿತಿಗೊಳಿಸಿದ.

ನೀವು ಎಕ್ಸೆಪ್ಶನ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಬೇಕು ಯಾವಾಗ

ಜಾವಾ, ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಸರಿಯಾಗಿಲ್ಲದ ಬಳಕೆದಾರ ಇನ್ಪುಟ್ ಉಂಟಾದ ಸಂಪನ್ಮೂಲ ಅಥವಾ ಆಕಸ್ಮಿಕ ನೆಟ್ವರ್ಕ್ ಬೇಧವನ್ನು ಪ್ರೋಗ್ರಾಂ ಅವಶ್ಯಕತೆ ಮಾಡಬಹುದು. ಅಪ್ಲಿಕೇಶನ್ ಡೆವಲಪರ್ ದಾಖಲಿಸಿದವರು ಆರಾಮದಾಯಕ ಬಳಸಲು, ನೀವು ತುರ್ತು ಸಂದರ್ಭಗಳಲ್ಲಿ ಸಂಭವಿಸುವುದನ್ನು ನಿಯಂತ್ರಿಸುತ್ತವೆ. ಗ್ರಾಹಕ ಒಂದು ನಿಭಾಯಿಸದ ತೊಡಕು, ಅಥವಾ ಕೇವಲ ಒಂದು ಸಂದೇಶವನ್ನು ಭಾಗವಾಗಿ ಏನೋ ತಪ್ಪಾಗಿದೆ ಎಂದು ತಿಳಿಸಿದ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ ಪರಿಣಾಮವಾಗಿ ಡೇಟಾ ಕಳೆದುಕೊಳ್ಳಲು, ಅಪ್ಲಿಕೇಶನ್ ತೊರೆಯುವ ಕಾಯಬೇಕಾಗುತ್ತದೆ ಮಾಡಬಾರದು.

ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು ನಿರ್ವಹಿಸುವುದಕ್ಕಾಗಿ

ಏನು ಪರಿಗಣಿಸಲು? ಜಾವಾ ಭಾಷೆಯ ತನ್ನದೇ ಅಂತರ್ನಿರ್ಮಿತ ಎಕ್ಸೆಪ್ಶನ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಕಾರ್ಯವನ್ನು ಹೊಂದಿದೆ. ಸಹಜವಾಗಿ, ದೋಷ ಬಹುಪಾಲು ಮತ್ತೊಂದು ಸಂಕಲನ ಹಂತದಲ್ಲಿ ಹಿಡಿಯಲ್ಪಟ್ಟು, ಗಣಕವು ಆ ಬಳಕೆಯು ಎಂದಿಗೂ ಸಾಧ್ಯ ಸೂಚಿಸುತ್ತೇವೆ. ಆದರೆ ಚಾಲನಾ ಸಮಯದಲ್ಲಿ ಸಂಭವಿಸುವ ಹೊರತುಪಡಿಸಿ ಈ ರೀತಿಯ ಇಲ್ಲ. ಡೆವಲಪರ್ ಇದು ನಿರೀಕ್ಷಿಸುವ ಮತ್ತು ಕೋಡ್ ವಿನ್ಯಾಸಗೊಳಿಸಲು ಇದು ದೋಷಯುಕ್ತ ಉಂಟು ಮಾಡಲಿಲ್ಲ ಆದ್ದರಿಂದ ಸಾಧ್ಯವಾಗುತ್ತದೆ, ಮತ್ತು ವಿಶೇಷ ರೀತಿಯಲ್ಲಿ ಅದನ್ನು ನಿರ್ವಹಿಸುವ ಮತ್ತು ಮತ್ತೊಂದು ಶಾಖೆಗೆ ನಿಯಂತ್ರಣ ಹಸ್ತಾಂತರಿಸಿದರು ಮಾಡಬೇಕು.

ಜಾವಾದಲ್ಲಿ, ಈ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಹಿಡಿಯಲು ಕಂಪೈಲರ್ ಆಗುತ್ತಿದೆ, ಆದ್ದರಿಂದ ವಿಶಿಷ್ಟ ಸಮಸ್ಯೆಗಳನ್ನು ಕರೆಯಲಾಗುತ್ತದೆ ಮತ್ತು ಪ್ರಮಾಣಿತ ವ್ಯಾಯಾಮ ಮಾದರಿಗಳನ್ನು ಹೊಂದಿವೆ.

ವಿಶಿಷ್ಟ ಬಹಿಷ್ಕರಿಸಲಾಗಿದೆ

ಈ ವಿಭಾಗವು - ನೀವು ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಪಡೆಯುವುದು ಇದರಲ್ಲಿ ಸರಳವಾದ ಉದಾಹರಣೆ. ಅದರ ಸರಳತೆ ಹೊರತಾಗಿಯೂ, ವಿಷಯದಲ್ಲಿ, ವಿಭಾಜಕಗಳು ಮಾಹಿತಿ, ಒಂದು ದೋಷ ಕಾರಣವಾಗುತ್ತದೆ ಇದು ಶೂನ್ಯ, ಇರಬಹುದು. ಸರಿ, ಇದು ಸಂಭವನೀಯ ವೇಳೆ ಕಳೆದ ಹುಟ್ಟು ಮನಗಂಡು ತಡೆಗಟ್ಟಲು. ಆದರೆ ಈ ಆಯ್ಕೆಯನ್ನು ಯಾವಾಗಲೂ ಲಭ್ಯವಿದೆ, ಆದ್ದರಿಂದ ವಿನಾಯಿತಿ "ಕ್ಯಾಚಿಂಗ್ ಶೂನ್ಯದಿಂದ ವಿಭಜನೆಯನ್ನು" ಸಂದರ್ಭದಲ್ಲಿ ನೇರವಾಗಿ ಆಯೋಜಿಸಬೇಕು.

ಪ್ರತಿಬಂಧಿಸಲು ಪ್ರಕ್ರಿಯೆಗೆ ದೋಷ ಜಾವಾ ಯಾಂತ್ರಿಕ ಈ ಕಾಣುತ್ತದೆ:

  • ರಾಶಿ ವಿನಾಯಿತಿ ಅಂಶದ ಹಾಗೆಯೇ ಯಾವುದೇ ಇತರ ಎಂದು, ಸೃಷ್ಟಿಯಾಗುತ್ತದೆ;
  • ಪ್ರೋಗ್ರಾಂ ಯ ಸ್ವಾಭಾವಿಕ ಅಡಚಣೆಯಾಗುತ್ತದೆ;
  • ಹೊರಗಿಟ್ಟು ಯಾಂತ್ರಿಕ ಕೋಡ್ ಮುಂದುವರಿಸಲು ಪರ್ಯಾಯ ಮಾರ್ಗ ಹುಡುಕಲು ಯತ್ನಿಸುತ್ತಿದ್ದಾರೆ;
  • ಪ್ರೊಸೆಸರ್, ಕೆಲಸದಲ್ಲಿ ಕಾರ್ಯಕ್ರಮದ ಸುರಕ್ಷಿತ ಮರಣದಂಡನೆ ಹುಡುಕಲು ಅಥವಾ ಪುನಃಸ್ಥಾಪಿಸಲು, ಅಥವಾ ವಿಶೇಷ ರೀತಿಯಲ್ಲಿ ವಿನಾಯಿತಿಯ ಸಾಕ್ಷಾತ್ಕಾರ ಸಂಭವಿಸುತ್ತದೆ.

ಈ ರೀತಿ ಇರಬಹುದು ದೋಷ ರಚಿಸುವ ಸರಳವಾದ ಉದಾಹರಣೆ:

(a == ಶೂನ್ಯ)

ಹೊಸ NullPointerException ಎಸೆಯಲು ();

ಇಲ್ಲಿ, ವೇರಿಯಬಲ್ ಒಂದು ಆರಂಭಕ್ಕೆ ನಲ್ಲಿ ಗುರುತುಹಾಕಿದ್ದರೆ, ಅಂದರೆ, ಅಲ್ಲ ಉಲ್ಲೇಖ ಶೂನ್ಯ ವಸ್ತು ಎಂಬುದನ್ನು. ಈ ಪರಿಸ್ಥಿತಿಯಲ್ಲಿ ಹುಟ್ಟಿಕೊಂಡಿವೆ ಮತ್ತು ವಿಶೇಷ ನಿರ್ವಹಣೆ ಅಗತ್ಯವಿದೆ ವೇಳೆ, ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಥ್ರೋ ಹೊಸ NullPointerException ಮೂಲಕ ಪೆಟ್ಟನ್ನು ().

ಕೀವರ್ಡ್ಗಳನ್ನು ಬಗ್ಗೆ ಕೆಲವು ವಿವರಗಳನ್ನು

ವಿನಾಯಿತಿಗಳನ್ನು ವ್ಯವಹರಿಸುವಾಗ ಒಂದು ಕ್ರಿಯೆ ಸೂಚಿಸಲು ಕೀವರ್ಡ್ ಜಾವಾ ಬಳಸಲು ಅಗತ್ಯ. ತಮ್ಮ ಐದು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಈ ಭಾಷೆ:

  • ಪ್ರಯತ್ನಿಸಿ. ಈ ಕೀವರ್ಡ್ ಇದೆ ಈಗಾಗಲೇ ಭೇಟಿ, ಮತ್ತು ಇದು ಒಂದು ವಿನಾಯಿತಿಯನ್ನು ಬಳಸಬಹುದು ಎಂದು ಕೋಡ್ ಒಂದು ಭಾಗಕ್ಕೆ ಪರಿವರ್ತನೆ ಅರ್ಥ. ಬ್ಲಾಕ್ ಸೀಮಿತ ಕಟ್ಟುಪಟ್ಟಿಗಳು {}.
  • ಕ್ಯಾಚ್. ಇದು ಬಯಸಿದ ಹೊರತುಪಡಿಸಿ ರೀತಿಯ ಪ್ರತಿಬಂಧಿಸುವ ಸೂಕ್ತವಾಗಿ ನಿರ್ವಹಿಸಲು.
  • ಅಂತಿಮವಾಗಿ. ಈ ಕೀವರ್ಡ್ ಸಹ ಇದಕ್ಕೆ ಹೊರತಾಗಿಲ್ಲ ಚೆಂಡನ್ನು ಇದೆ ಐಚ್ಛಿಕ ಮತ್ತು ಹೇಗಾದರೂ ಬೇಕಾಗಿತ್ತು ಕೋಡ್ ನ ಒಂದು ನಿರ್ದಿಷ್ಟ ತುಣುಕು ಮಾಡಲು ಬಳಸಲಾಗುತ್ತದೆ. ಬ್ಲಾಕ್ ಪ್ರಯತ್ನಿಸಿ ನಂತರ ನೇರವಾಗಿ ಸೇರಿಸಲಾಗಿದೆ.
  • ಥ್ರೋ - ಎಲ್ಲಿಂದಲಾದರೂ ಜಾವಾ ವಿನಾಯಿತಿಗಳು ರಚಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
  • ಹೊಡೆತಗಳು - ವಿಧಾನದ ಚಿಹ್ನೆಯಲ್ಲಿ ಇರಿಸಲಾಗುತ್ತದೆ ಕೀಲಿಪದ. ಇದು ಕೆಳಗಿನ ಕೋಡ್ ಈ ರೀತಿಯ ಜಾವಾ ಒಂದು ವಿನಾಯಿತಿಯನ್ನು ಬಳಸಬಹುದು ಎಂದು ಅರ್ಥ. ಅವನ ನಿರೀಕ್ಷೆಯಂತೆ ವಿಧಾನವನ್ನು ಕೆಲಸ ಸಾಧ್ಯವಿಲ್ಲ - ಈ ಗುರುತನ್ನು ಮನಸ್ಸಿನಲ್ಲಿ ದಾಳಿಗೊಳಗಾದ ಅಗತ್ಯವಿರುವ ಡೆವಲಪರ್ಗಳಿಗೆ ಸಂಕೇತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.

ಪ್ರಯತ್ನಿಸಿ ಜೊತೆ ಕ್ಯಾಚಿಂಗ್

ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು ಮಾಡಲು ಬಿಡುಗಡೆ, ನೈಸರ್ಗಿಕವಾಗಿ ಇದು ವಿಶೇಷ ರೀತಿಯಲ್ಲಿ ನಿರ್ವಹಿಸಬೇಕು ಎಂದು ಭಾವಿಸಲಾಗುತ್ತದೆ. ಕೋಡ್ ವಿಭಾಗದಲ್ಲಿ ಒಂದು ಬ್ಲಾಕ್ನಲ್ಲಿ ಆಫ್ ಬೇಲಿಯಿಂದ ಸುತ್ತುವರಿದ ಇದೆ, ಇದು ಮಾಡಲು ಅನುಕೂಲವಾಗುವಂತಹ ರೀತಿಯಲ್ಲಿ. ಯಾವ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಹೊಂದಿರಬಹುದು. ನೀವು ಈ ಕೋಡ್ ರನ್, ವರ್ಚುಯಲ್ ಯಂತ್ರ, ಅನಿರೀಕ್ಷಿತ ಪರಿಸ್ಥಿತಿಯು ಕಾಣಬಹುದು ವಿಮರ್ಶಾತ್ಮಕ ಬ್ಲಾಕ್ ಇದೆ ಮತ್ತು ವರ್ಗಾವಣೆ ಪ್ರಕ್ರಿಯೆಗೆ ನಿಲ್ದಾಣಕ್ಕೆ ನಿಯಂತ್ರಿಸುವ ಅರ್ಥ.

ಜಾವಾ ಕೋಡ್ ಇದರಲ್ಲಿ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಇರಬಹುದು ವಿಶೇಷ ಬ್ಲಾಕ್ ಪ್ರಯತ್ನಿಸಿ, ಸುತ್ತುವ. ಇದರಿಂದಾಗಿ ಅವರು ಅದೇ ಸ್ಥಳ ಅಲ್ಲ raspolzayas ಕೋಡ್ ಸಿಲುಕಿಹೋಗಬಹುದು ಹಲವಾರು ಅನಿರೀಕ್ಷಿತ ಸಂದರ್ಭಗಳಲ್ಲಿ ಇರಿಸಲಾಗುತ್ತದೆ.

ಕೆಳಗಿನಂತೆ ಪ್ರಕ್ರಿಯೆ ಯೂನಿಟ್ ಗೆ ಅತ್ಯಂತ ವಿಶಿಷ್ಟ ಕೋಡ್:

ಪ್ರಯತ್ನಿಸಿ {

// ಇಲ್ಲಿ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಸೃಷ್ಟಿಸುವ ಕೆಲವು ಸಂಕೇತಗಳನ್ನು

} ಕ್ಯಾಚ್ (Tip_isklyucheniya_1 identifikator_1) {

// ಇಲ್ಲಿ ಎಕ್ಸೆಪ್ಶನ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್, ಅದರ ಪ್ರಕಾರ ಮತ್ತು ಪರಿಸ್ಥಿತಿಗಳಿಗೆ ಅನುಗುಣವಾಗಿ;

} ಕ್ಯಾಚ್ (Tip_isklyucheniya_2 identifikator_2) {

// ಇಲ್ಲಿ ಎಕ್ಸೆಪ್ಶನ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್, ಅದರ ಪ್ರಕಾರ ಮತ್ತು ಪರಿಸ್ಥಿತಿಗಳಿಗೆ ಅನುಗುಣವಾಗಿ;

}

ಕೀವರ್ಡ್ ಕ್ಯಾಚ್ ತನ್ನ ರೀತಿಯ ಅನುಸರಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಒದಗಿಸಿದ ಕೋಡ್ ವರದಿ, ಮತ್ತು ಕೆಳಗೆ ವಿವರಿಸಿದಂತೆ, ಉಪಚರಿಸಬೇಕು, ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಅದನ್ನು ಸ್ಕ್ಯಾನ್. ಗುರುತು ವಾದಗಳನ್ನು ಕೋಡ್ ಬ್ಲಾಕ್ ಜರುಗಿಸಲು ಬಳಸಬಹುದು.

ಅಂತಿಮವಾಗಿ

ಹಿಂದಿನ ಅಧ್ಯಾಯದಲ್ಲಿ ರಿಂದ ಸ್ಪಷ್ಟವಾಯಿತು, ಕ್ಯಾಚ್ ಬ್ಲಾಕ್ಗಳನ್ನು ವಿನಾಯಿತಿಗಳನ್ನು ಹಿಡಿದು ಅವುಗಳನ್ನು ಸಂಸ್ಕರಿಸಲು. ಆದರೆ ಆಗಾಗ್ಗೆ ಪರಿಸ್ಥಿತಿಯನ್ನು ಅಲ್ಲಿ ಹಾನಿಗೊಳಗಾದವರು ತಪ್ಪುಗಳನ್ನು ಸೆಳೆಯಿತು ಎಂಬುದನ್ನು, ಕೆಲವು ಕೋಡ್ ಔಟ್ ಮಾಡಬೇಕು ಎದುರಾಗುತ್ತದೆ. ಇದಕ್ಕಾಗಿ ಅಂತಿಮವಾಗಿ ಕೀವರ್ಡ್ ಇಲ್ಲ. ಇದು ಫೈಲ್ಗಳು ಅಥವಾ ನೆಟ್ವರ್ಕ್ಗಳ ಮುಚ್ಚುವ ವಿವಿಧ ಕೌಂಟರ್ ಮೌಲ್ಯಗಳನ್ನು ಹೆಚ್ಚಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ.

ಈ ಕಥಾವಸ್ತುವಿನ ಅನೇಕ ಕ್ಯಾಚ್ ಬ್ಲಾಕ್ಗಳನ್ನು ವಿಧಾನಗಳು ವಿನಾಯಿತಿಗಳನ್ನು ಕ್ಯಾಚ್ ಆವಿಷ್ಕಾರ ಒದಗಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಪ್ರಯತ್ನಿಸಿ ಒಳಗೊಂಡಿರುವ ಕೋಡ್ ಶೀತಲ ಮುಂತಾದ ಅನಿರೀಕ್ಷಿತ ಪರಿಸ್ಥಿತಿಯು ಉತ್ಪಾದಿಸುತ್ತದೆ. ನಂತರ, ಕನ್ಸೋಲ್ ಅಭಿವ್ಯಕ್ತಿ «ಶೀತ ಕಾಟ್!» ತೋರಿಸಲ್ಪಡುತ್ತದೆ ಮತ್ತು «ಬಗ್ಗೆ? ಹುರಿದುಂಬಿಸಲು ಆ ಇದೆಯೇ». ಅಂತಿಮವಾಗಿ ಬ್ಲಾಕ್ ಯಾವುದೇ ಸಂದರ್ಭದಲ್ಲಿ ಕಾರ್ಯರೂಪಕ್ಕೆ ಹೊಂದಿದೆ.

ವಾಸ್ತವವಾಗಿ, ಅಂತಿಮವಾಗಿ ಅಲ್ಲಿ ಪ್ರಚೋದಕ ತಪ್ಪಿಸಲು ಒಂದು ರೀತಿಯಲ್ಲಿ. ಇದು ವರ್ಚುವಲ್ ಯಂತ್ರ ಪೂರ್ಣಗೊಂಡ ಸಂಪರ್ಕ ಹೊಂದಿದೆ. ಇದು ಜಾರಿಗೆ ಹೇಗೆ ಹುಡುಕಿ, ಅಂತರ್ಜಾಲದ ಮೈದಾನಗಳು ಸಾಧ್ಯ.

ತ್ರೋ ಕೀವರ್ಡ್

ಥ್ರೋ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ಉತ್ಪಾದಿಸುತ್ತದೆ. ಕೆಳಗಿನಂತೆ ಇದರ ಸಿಂಟ್ಯಾಕ್ಸ್ ಹೊಂದಿದೆ:

ಹೊಸ NewException ಎಸೆಯಲು ();

ಮಾದರಿ NewException ಹೊಸ ಅನ್ವಯವಾಗುವುದಿಲ್ಲ ರಚಿಸಲಾಗಿದೆ (). ಒಂದು ರೀತಿಯ ಬಳಸಬಹುದು ಈಗಾಗಲೇ ಪ್ರಮಾಣಿತ Java ಗ್ರಂಥಾಲಯವಾಗಿದೆ ತರಗತಿಗಳು ಸೇರ್ಪಡಿಸಲಾಗಿದೆ ಮಾಹಿತಿ ಮತ್ತು ಹಿಂದೆ ತನ್ನದೇ ಆದ ಉತ್ಪಾದನೆಯ ಡೆವಲಪರ್ ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ.

ಈ ವಿನ್ಯಾಸ ಯಾವುದೇ ವಿಧಾನದ ವಿವರಣೆ, ಕರೆ ನಂತರ ಅಡ್ಡಗಟ್ಟಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ ಸಲುವಾಗಿ, ಬ್ಲಾಕ್ ಪ್ರಯತ್ನಿಸಿ ಸಂಭವಿಸಬೇಕಿದೆ.ಈ ಯಾವ ಭಾಗವಾಗಿದೆ.

ಕೀವರ್ಡ್ ಎಸೆಯುತ್ತಾರೆ

ಯಾವ ವಿಧಾನವನ್ನು ಒಂದು ವಿನಾಯಿತಿಯನ್ನು ಬಳಸಬಹುದು ಅಲ್ಲಿ, ಆದರೆ ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ ಒಂದು ಪರಿಸ್ಥಿತಿಯ ಬೆಳವಣಿಗೆಯ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ವೇಳೆ. ಈ ನಿಟ್ಟಿನಲ್ಲಿ, ವಿಧಾನದ ಚಿಹ್ನೆಯಲ್ಲಿ ಪದ ಎಸೆಯುತ್ತಾರೆ ಮತ್ತು ಸಾಧ್ಯವಾದಷ್ಟು ವಿನಾಯಿತಿಗಳ ಪ್ರಕಾರವನ್ನು ಸೂಚಿಸುತ್ತದೆ.

ಈ ಲೇಬಲ್ ವಿಧಾನವನ್ನು ತಮ್ಮ ಅದೇ ಹೊರತುಪಡಿಸಿ ನಿರ್ವಹಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ ಎಂಬ ಕ್ಲೈಂಟ್ ಡೆವಲಪರ್ಗಳಿಗೆ ಸೂಚಕ ಒಂದು ರೀತಿಯ. ಜೊತೆಗೆ, ಬರವಣಿಗೆ ಗುರುತುಹಾಕಿದ್ದರೆ, ಆಗ ಕಂಪೈಲರ್ ಸ್ಪಷ್ಟವಾಗಿ ಒತ್ತಾಯಿಸಲು ಇದು ಕೇಳುತ್ತೇವೆ.

ಸಂಪನ್ಮೂಲಗಳನ್ನು ಪ್ರಯತ್ನಿಸಿ

ಜಾವಾ ಆವೃತ್ತಿ 7 ಅಭಿವರ್ಧಕರು ಸಂಪನ್ಮೂಲಗಳೊಂದಿಗೆ ಚಿಕಿತ್ಸೆಯಾಗಿ ಬ್ಲಾಕ್ ಪ್ರಯತ್ನಿಸಿ ಒಂದು ಪ್ರಮುಖ ನೂತನ ಸೇರಿದ್ದಾರೆ.

ನಂತರ ಬಳಕೆಗಾಗಿ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಸಂರಕ್ಷಿಸುವ ಮುಚ್ಚಲಾಯಿತು ಮಾಡಬೇಕು ಅನೇಕ ವಸ್ತುಗಳು, ಜಾವಾದಲ್ಲಿ ರಚಿಸಲಾಗಿದೆ. ಹಿಂದೆ ಇದು ಗಣನೆಗೆ ತೆಗೆದುಕೊಂಡು ಕೈಯಾರೆ ಈ ನಿದರ್ಶನಗಳಲ್ಲಿ ನಿಲ್ಲಿಸಬೇಕಾಯಿತು. ಈಗ, ಆದಾಗ್ಯೂ, ಅವರು AutoClosable ಇಂಟರ್ಫೇಸ್ ಕಾಣಿಸಿಕೊಂಡರು. ಇದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಒಂದು ಬ್ಲಾಕ್ ಪ್ರಯತ್ನಿಸಿ ಇರಿಸಲಾಗುತ್ತದೆ ಈಗಾಗಲೇ ಬಳಸಲಾಗುತ್ತದೆ ವಸ್ತುಗಳು ಮುಚ್ಚಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಈ ವಿಧಾನವು ಮೂಲಕ ಅದರ ವಾಚನೀಯತೆ ಹೆಚ್ಚಾಗುತ್ತದೆ ಕೋಡ್ ಬರೆಯಲು ಹೆಚ್ಚು ಅನುಕೂಲಕರ ಮಾರ್ಪಟ್ಟಿದೆ.

ಓನ್ ತರಗತಿಗಳು ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು

ವಿವರಿಸಲಾಗಿದೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಸೃಷ್ಟಿಕರ್ತರು ತುರ್ತುಸ್ಥಿತಿಗಳ ವಿನ್ಯಾಸ ರೀತಿಯ ಖಾತೆಯನ್ನು ಅನೇಕ ಅಂಶಗಳನ್ನು ಒಳಗೆ ತೆಗೆದುಕೊಂಡಿತು. ಆದಾಗ್ಯೂ, ಆಯ್ಕೆಗಳ ಎಲ್ಲಾ Java ತಮ್ಮ ವಿನಾಯಿತಿಗಳನ್ನು ವಿವರಿಸುವ ಸಾಮರ್ಥ್ಯ ಜಾರಿಗೆ ಆದ್ದರಿಂದ ಘಟನೆಗಳ ಫಲಿತಾಂಶವನ್ನು ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ ತಡೆಗಟ್ಟಲು ಇದು ನಿರ್ದಿಷ್ಟ ಕೋಡ್ ಅವಶ್ಯಕತೆಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ.

ರಚಿಸಲು ಸರಳ ರೀತಿಯಲ್ಲಿ - ಸೂಕ್ತ ವಸ್ತುವನ್ನು ಸಂದರ್ಭಕ್ಕನುಗುಣವಾಗಿ ಆನುವಂಶಿಕವಾಗಿ.

ಇಲ್ಲ, ನಿಮ್ಮ ಸ್ವಂತ ವಿನಾಯಿತಿಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ಬಳಸಲಾಗಿದೆ ವರ್ಗಕ್ಕೆ ಎಕ್ಸೆಪ್ಶನ್ ನಿಂದ ಆನುವಂಶಿಕವಾಗಿ ಹರಿಯುತ್ತಿತ್ತು. ಡೀಫಾಲ್ಟ್, ಎರಡನೇ - - ವಾದವನ್ನು ಸಂ ಮಾದರಿ ಸ್ಟ್ರಿಂಗ್ ಜೊತೆ MyException ಎರಡು ನಿರ್ಮಾಣಕ್ಕೆ ಹೊಂದಿದೆ.

ನಂತರ, ಸಹಿಯನ್ನು ಹೊಂದಿದೆ ಸಾರ್ವಜನಿಕ ತರಗತಿಯ FullConstructors ಜಾರಿಗೆ ವಿಧಾನವನ್ನು ಎಫ್, ರಲ್ಲಿ MyException ಎಸೆಯುತ್ತಾರೆ. ಈ ಕೀವರ್ಡ್ ಎಫ್ ಜಾವಾ MyException ವಿನಾಯಿತಿ ನಂತಹ ಎಸೆಯಲು ಎಂದು ಅರ್ಥ. ಇದಲ್ಲದೆ, ವಿಧಾನವನ್ನು ದೇಹದಲ್ಲಿ ಕನ್ಸೋಲ್ ಸ್ವತಃ ಮತ್ತು ನಿಜವಾದ ಪೀಳಿಗೆಯ MyException, ಥ್ರೋ ಮೂಲಕ ಪಠ್ಯವನ್ನು ಮಾಹಿತಿ ನೀಡುತ್ತಿದ್ದ.

ಎರಡನೆಯ ವಿಧಾನ ಇದು ಹಿಡಿಯುತ್ತಿರುವ ಕನ್ಸೋಲ್ನಲ್ಲಿ ಕಂಡುಬರುತ್ತಿದೆ ನೀವು ಒಂದು ಎಕ್ಸೆಪ್ಶನ್ ರಚಿಸುವಾಗ, ಒಂದು ಸ್ಟ್ರಿಂಗ್ ನಿಯತಾಂಕ ರವಾನಿಸಲಾಗಿದೆ ಎಂದು ಮೊದಲನೆಯದು, ಕೊಂಚ ವಿಭಿನ್ನವಾಗಿದೆ. ಮುಖ್ಯ ಅದನ್ನು ಎಫ್ () ಮತ್ತು ಗ್ರಾಂ () ಪ್ರಯತ್ನಿಸಿ ತಪಾಸಣೆ ಇರಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಕೀವರ್ಡ್ ಕ್ಯಾಚ್ MyException ಹಿಡಿಯಲು ಕಾನ್ಫಿಗರ್ ಸ್ಪಷ್ಟವಾಗಿದೆ. ಸಂಸ್ಕರಣೆಯ ಪರಿಣಾಮವಾಗಿ ಕನ್ಸೋಲ್ ಗೆ ಒಂದು ದೋಷ ಸಂದೇಶವನ್ನು ಪ್ರದರ್ಶಿಸಲು ಹೊಂದಿದೆ:

ಹೀಗೆ ತನ್ನ ಕೈಯಿಂದ, ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು ಸೇರಿಸಲು ಬಂದಿತು.

ಆರ್ಕಿಟೆಕ್ಚರ್ ವಿನಾಯಿತಿಗಳನ್ನು

ಜಾವಾ ಎಲ್ಲಾ ವಸ್ತುಗಳಲ್ಲಿ ವಿನಾಯಿತಿಗಳನ್ನು ಉದಾಹರಣೆಗಳು ಆನುವಂಶಿಕವಾಗಿ ಮತ್ತು ಒಂದು ಕ್ರಮಾನುಗತ ಹೊಂದಿವೆ. ಈ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಕಟ್ಟಿದ್ದರು ಎಲ್ಲಾ ದೋಷಗಳನ್ನು ಮೂಲ ಅಂಶ ವರ್ಗದ java.lang.Throwable ಆಗಿದೆ. ಅವರನ್ನು ಎರಡು ರೀತಿಯ ಆನುವಂಶಿಕವಾಗಿ - ದೋಷ ಮತ್ತು ಎಕ್ಸೆಪ್ಶನ್.

ದೋಷ - ನಿರ್ಣಾಯಕ ದೋಷ ಸೂಚಿಸುತ್ತದೆ ಮತ್ತು ಪರಿಶೀಲಿಸದೆ ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು ಆಗಿದೆ. ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಪ್ರತಿಬಂಧ ಮತ್ತು ಸಂಸ್ಕರಣೆ ಡೇಟಾ ವಿನ್ಯಾಸ ಹಂತದಲ್ಲಿ ಸಂಭವಿಸುತ್ತದೆ ಮತ್ತು ಅಂತಿಮ ಅಪ್ಲಿಕೇಷನ್ ಕೋಡ್ ಪರಿಚಯಿಸುವ ಅಗತ್ಯ ಅಲ್ಲ.

ರಚಿಸುವ ಮತ್ತು ವಿನಾಯಿತಿಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ ವರ್ಗ ಹೊರತಾಗಿಲ್ಲ. ಇದು ಅನುಕ್ರಮವಾಗಿ, RuntimeException ಹಲವಾರು ಶಾಖೆಗಳನ್ನು ವಿಂಗಡಿಸಲಾಗಿದೆ. ರನ್ಟೈಮ್ ವಿನಾಯಿತಿಗಳು ಅಂದರೆ, ಕಾರ್ಯಕ್ರಮದ ಸಂದರ್ಭದಲ್ಲಿ ಸಂಭವಿಸುವ RuntimeException ಇವೆ. ಅದರಿಂದ ಪಡೆದ ಎಲ್ಲಾ ತರಗತಿಗಳು ದೃಢೀಕರಿಸಲಾಗದ.

ಸಾಮಾನ್ಯವಾಗಿ ಅಪವಾದಗಳಿವೆ

ಜಾವಾ ಬಿಟ್ಟರೆ, ಇದು ಪಟ್ಟಿಯಲ್ಲಿ ಆದ್ದರಿಂದ ನೀವು ವಿವರ ಇಬ್ಬರೂ ವಿವರಿಸುತ್ತದೆ, ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ, ಕೆಳಗೆ ಇದೆ:

  • ArithmeticException. ಈ ಸಂಖ್ಯಾ ಕಾರ್ಯಗಳು ಸಂಬಂಧಿಸಿದ ದೋಷಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು. ಹೆಚ್ಚು ಹೊಳೆಯುವ ಉದಾಹರಣೆಗೆ - ಶೂನ್ಯದಿಂದ ವಿಭಾಗ.
  • ArrayIndexOutOfBoundsException - ದೀರ್ಘತೆಯ ಒಟ್ಟು ಮೀರಿಸುವಂತಹ ಸರಣಿ ಅಂಶ ಸಂಖ್ಯೆಗೆ ಮನವಿಯನ್ನು.
  • ArrayStoreException - ಅರೇ ನ ಹೊಂದಿಕೊಳ್ಳದ ಅಂಶ ರೀತಿಯ ನಿಯೋಜಿಸಿ ಪ್ರಯತ್ನ.
  • ClassCastException - ಮತ್ತೊಂದು ತಪ್ಪು ಒಂದು ರೀತಿಯ ತರಲು ಪ್ರಯತ್ನವೊಂದನ್ನು.
  • IllegalArgumentException - ವಿಧಾನ ಕರೆ ತಪ್ಪು ವಾದವನ್ನು ಬಳಸಿಕೊಂಡು.
  • NegativeArraySizeException - ನೀವು ಋಣಾತ್ಮಕ ಗಾತ್ರದ ಒಂದು ಶ್ರೇಣಿಯನ್ನು ರಚಿಸುವಾಗ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್.
  • NullPointerException - ಶೂನ್ಯ ಉಲ್ಲೇಖಗಳು ದುರುಪಯೋಗದ.
  • NumberFormatException - ಒಂದು ತಪ್ಪು ಸ್ಟ್ರಿಂಗ್ ಪೂರ್ಣಾಂಕದ ಪರಿವರ್ತನೆಗೆ ಕಂಡುಬರುತ್ತದೆ.
  • UnsupportedOperationException - ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ.

ಈ ಉದಾಹರಣೆಗಳು ಪರಿಶೀಲಿಸದೆ ಜಾವಾ ವಿನಾಯಿತಿಗಳ ರೀತಿಯ ಪ್ರತಿನಿಧಿಸುತ್ತವೆ. ಆದರೆ ಪರಿಶೀಲಿಸಿದ ನೋಡಲು:

  • ClassNotFoundException - ವರ್ಗ ಕಂಡುಬಂದಿಲ್ಲ.
  • IllegalAcccessException - ವರ್ಗ ಪ್ರವೇಶವನ್ನು ನಿರ್ಬಂಧಿಸಲು.
  • InterruptedException - ಹರಿವಿನ ಅಡಚಣೆ.
  • NoSuchFieldException - ಯಾವುದೇ ಅಗತ್ಯವಿರುವ ಫೀಲ್ಡ್ ಇವೆ.

ವಿನಾಯಿತಿಗಳನ್ನು ವ್ಯಾಖ್ಯಾನದ

ಆಗಾಗ್ಗೆ ಎದುರಿಸಿದೆ ವಿನಾಯಿತಿಗಳ ಮಾತನಾಡುತ್ತಾ ವಿನ್ಯಾಸ ತಮ್ಮ ವ್ಯಾಖ್ಯಾನ, ಮಾಡಬಹುದು ತಪ್ಪಾಗಿ ಗ್ರಹಿಸಬಹುದು ಎಂದು ಗಮನಿಸಬೇಕು. ಮುಂದಿನ ಅನಿರೀಕ್ಷಿತ ಪರಿಸ್ಥಿತಿಯು ಸಿಗಬಹುದಾದ ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ರಲ್ಲಿ ವಿವರಿಸುವ ಸಣ್ಣ ಪಟ್ಟಿ.

NullPointerException. ಮೊದಲ ಸಂದರ್ಭದಲ್ಲಿ ಒಂದು ಎಕ್ಸೆಪ್ಶನ್, ಯಾವಾಗ ಇಲ್ಲ ಒಂದು ಉಲ್ಲೇಖ ಆಕರ್ಷಿಸಲು ಶೂನ್ಯ ಸಮಾನವಾಗಿರುತ್ತದೆ ಹೊಂದಿರುವ ವಸ್ತುವು ಮಾಡುವುದು. ಇದು ಶೂನ್ಯ ವರ್ಗದ ಉದಾಹರಣೆಗೆ ವಿಧಾನಗಳನ್ನು ವಿಸ್ತರಿಸುತ್ತದೆ. NullPointerException ಸಮಾನ ಉದ್ದವನ್ನು ಶೂನ್ಯ ರಚನೆಯ ಪಡೆಯುವ ಸಂದರ್ಭದಲ್ಲಿ ನೀಡಲಾಗುತ್ತದೆ. ಅಂತಹ ಸಂದರ್ಭಗಳಲ್ಲಿ ತಪ್ಪಿಸಲು ನಿಯತಕಾಲಿಕವಾಗಿ ಶೂನ್ಯ ಸೈಟ್ಗಳ ಪರಿಶೀಲಿಸುತ್ತದೆ.

ArrayIndexOutOfBoundsException. ಯಾವುದೇ ಪ್ರೋಗ್ರಾಂ ಸರಣಿಗಳ ಬಳಕೆಯನ್ನು ಇರುವುದಿಲ್ಲ. ಅಂತೆಯೇ, ಇದು ಆಗಾಗ ರಹಿತ ಸೃಷ್ಟಿಸಲು ಮತ್ತು ದೋಷ ಮಾಡಬಹುದು. ಡೆವಲಪರ್ ಸೂಚ್ಯಂಕ ಪಟ್ಟಿಯಲ್ಲಿ ಎಂಬುದನ್ನು ಒಂದು ಶ್ರೇಣಿಯನ್ನು ಅಂಶ ಪ್ರವೇಶಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ ವಿನಾಯಿತಿಯು ಸಂಭವಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ವಿನಂತಿಸಿದ ಮೌಲ್ಯದ ಮೇಲೆ ಅಥವಾ ಶೂನ್ಯ ಉದ್ದ ಕೆಳಗಿದೆ. ಸಾಮಾನ್ಯವಾಗಿ ಶ್ರೇಣಿಯಲ್ಲಿನ ಶೂನ್ಯ ಸ್ಕೋರ್ ಆರಂಭವಾಗುತ್ತದೆ ಎಂದು ವಾಸ್ತವವಾಗಿ ಒಂದು ಪರಿಣಾಮವಾಗಿದೆ.

ಸಂಶೋಧನೆಗಳು

ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಜಾವಾ ವಿನಾಯಿತಿಗಳನ್ನು - ಮಹತ್ತರವಾಗಿ ಪ್ರೋಗ್ರಾಮರ್ ಕೆಲಸ ಹಾಗೂ ಅವರಿಗೆ ಕ್ಲೀನ್ ಮತ್ತು ಕೋಡ್ ದೋಷಗಳನ್ನು ರಹಿತ ರಚಿಸಲು ಅನುಮತಿಸುತ್ತದೆ ಒಂದು ಪ್ರಬಲ ಸಾಧನ ಪರಿಸರ,. ಹೇಗೆ ನಯವಾದ ಮತ್ತು ಸ್ಥಿರ ಕಾರ್ಯನಿರ್ವಹಣೆಯ ಅಪ್ಲಿಕೇಶನ್ ಮೇಲೆ ಸ್ಥಿತಿ ಮತ್ತು ಅಭಿವೃದ್ದಿಯ ಪ್ರಖ್ಯಾತಿಯನ್ನು ಅವಲಂಬಿಸಿರುತ್ತದೆ.

ಸಹಜವಾಗಿ, ಹೆಚ್ಚು ಕಡಿಮೆ ಸರಳವಾದ ಕಾರ್ಯಕ್ರಮಗಳನ್ನು ಸರಿಯಿಲ್ಲದ ಸಂದರ್ಭಗಳಲ್ಲಿ ಸುಲಭವಾಗಿ ಪತ್ತೆಹಚ್ಚಲು. ಆದರೆ ನೂರು ಸಾವಿರ ಸಾಲುಗಳನ್ನು ದೊಡ್ಡ ಸ್ವಯಂಚಾಲಿತ ಸಂಕೀರ್ಣಗಳಲ್ಲಿ ಇದು ಕೇವಲ ದೀರ್ಘಕಾಲದ ಪರೀಕ್ಷೆ ಮತ್ತು ದೋಷಗಳನ್ನು ಪರಿಣಾಮವಾಗಿ ಸಾಧ್ಯ.

ಅವರು ಉತ್ಸಾಹಿಗಳಿಗೆ ಹುಡುಕಿದಾಗ ಇದು ಕೆಲವು ಅನ್ವಯಿಕೆಗಳಲ್ಲಿ ಉದ್ಭವಿಸುವ ಜಾವಾ ಎಕ್ಸೆಪ್ಶನ್ ದೋಷ, ಕೆಲವು ಕಂಪನಿಗಳು ಒಂದು ಪ್ರತಿಫಲ ನೀಡುತ್ತವೆ. ವಿಶೇಷವಾಗಿ ಭದ್ರತಾ ನೀತಿ ಸಾಫ್ಟ್ವೇರ್ ಉಲ್ಲಂಘನೆಯಾಗಿದೆ ಉಂಟುಮಾಡುವ ಆ ಮೆಚ್ಚುಗೆ.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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