Notas de estudio: errores y excepciones de Java

error

Errores de hardware o sistema operativo

anormal

Acción realizada fuera del flujo de control normal debido a un error en el programa.
Capturar excepciones
(1) región protegida: un fragmento de código que puede generar excepciones y seguir el código para manejar estas excepciones;
(2) Java usa el bloque try {} para colocar excepciones que pueden generar excepciones, y usa catch El bloque captura todas las excepciones lanzadas por el bloque try y usa el bloque finalmente para borrarlas;

try{
    
       检查语句序列;}
catch(Exception ex){
    
        异常发生的处理语句 }
finally{
    
        一定要执行的语句}

Excepción común

RuntimeException
subíndice de matriz de conversión de tipo incorrecto fuera de límites acceso de puntero nulo
IOExeption
lee datos de un archivo inexistente más allá del final del archivo para continuar leyendo EOFException conectarse a una URL inexistente

Por ejemplo

public class Test01{
    
    
    public static void main(String[] args){
    
    
        String friends[] = {
    
    "lisa","bily","kessy"};
        try{
    
    
            for(int i=0;i<5;i++) {
    
    
                System.out.println(friends[i]);
            }
        }catch(ArrayIndexOutOfBoundsException e){
    
    
            System.out.println("index err");
        }
        System.out.println("\nthis is the end");
    }
}
程序Test01运行结果:lisa    bily    kessy
        index err this is the end   

public class DivideZero1{
    
    
    int x;
    public static void main(String[] args) {
    
    
        int y;
        DivideZero1 c=new DivideZero1();
        try{
    
    
            y=3/c.x;
        }
        catch(ArithmeticException e){
    
    
            System.out.println("divide by zero error!");
        }
        System.out.println("program ends ok!");
    }
}
程序DivideZero1运行结果:
        divide by zero error!
        program ends ok!


Declarar una excepción

Declarar que se lanza una excepción es la segunda forma de manejar excepciones en Java.
Si un método (cuando se ejecuta la declaración) puede generar algún tipo de excepción, pero no está seguro de cómo manejar dicha excepción, este método debe declarar explícitamente que arroja Las excepciones indican que el método no manejará estas excepciones, pero la persona que llama al método es responsable de manejarlas.
En la declaración del método, la cláusula throws se puede usar para declarar la lista de excepciones lanzadas. El tipo de excepción después de los throws puede ser el tipo de excepción generado en el método o su clase padre.
Declare un ejemplo de excepción:

public void readFile(String file)  throws FileNotFoundException {
    
    
        ……
        // 读文件的操作可能产生FileNotFoundException类型的异常
        FileInputStream fis = new FileInputStream(file);
        ..……
        }

Lanzar una excepción manualmente

Los objetos de clase de excepción de Java son generados y lanzados automáticamente por el sistema cuando ocurre una excepción durante la ejecución del programa, o pueden ser creados y lanzados manualmente según sea necesario.
Primero, se genera un objeto de clase de excepción, y luego la operación de lanzamiento se implementa a través de la declaración de lanzamiento (enviada a Java para ejecutar alrededores).
IOException e = new IOException ();
throw e;
La excepción que se puede lanzar debe ser una instancia de Throwable o sus subclases. La siguiente declaración producirá un error de sintaxis en el momento de la compilación:

public class Test01{
    
    
    public void regist(int num) throws MyException {
    
    
        if (num < 0)
            throw new MyException(“人数为负值,不合理”,3);
        else
            System.out.println("登记人数" + num );
    }
    public void manager() {
    
    
        try {
    
    
            regist(100);
        } catch (MyException e) {
    
    
            System.out.print("登记失败,出错种类"+e.getId());
        }
        System.out.print("本次登记操作结束");
    }
    public static void main(String args[]){
    
    
        Test8_6 t = new Test8_6();
        t.manager();


Caso de uso de springBuffer adjunto

package tyichang;

public class E18 {
    
    
    public static void main(String[] args) {
    
    
        System.out.println("------------------------");
        add();
        System.out.println("------------------------");
        update();
        System.out.println("------------------------");
        delete();
    }

    public static void add() {
    
    
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("ABC");
        System.out.println(stringBuffer);
        stringBuffer.append("HER");
        System.out.println(stringBuffer);
        stringBuffer.insert(1, "de");
        System.out.println(stringBuffer);

    }

    public static void update() {
    
    
        StringBuffer stringBuffer = new StringBuffer("AAAAAAA");
        stringBuffer.setCharAt(2, 'C');
        System.out.println(stringBuffer);
        stringBuffer.replace(3, 5, "de");
        System.out.println(stringBuffer);
        System.out.println(stringBuffer.reverse());
    }

    public static void delete(){
    
    
        StringBuffer stringBuffer = new StringBuffer("AAVAAAAA");
        stringBuffer.delete(3,5);
        System.out.println(stringBuffer);
        stringBuffer.deleteCharAt(2);
        System.out.println(stringBuffer);
        stringBuffer.delete(0,stringBuffer.length());
        System.out.println(stringBuffer);
    }
}

Supongo que te gusta

Origin blog.csdn.net/qq_44909275/article/details/105481330
Recomendado
Clasificación