Notas de estudo: erros e exceções de java

erro

Erros de hardware ou sistema operacional

anormal

Ação tomada fora do fluxo de controle normal devido a um erro no programa.
Capture exceções
(1) região protegida: um trecho de código que pode gerar exceções e seguir o código para lidar com essas exceções;
(2) Java usa o bloco try {} para colocar exceções que podem lançar exceções e usar catch O bloco captura todas as exceções lançadas pelo bloco try e usa o bloco finally para eliminá-las;

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

Exceção comum

RuntimeException
tipo errado conversão array subscrito fora dos limites acesso de ponteiro nulo
IOExeption
leu dados de um arquivo inexistente além do final do arquivo para continuar lendo EOFException conectar a uma URL inexistente

Por exemplo

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!


Declare uma exceção

Declarar que uma exceção é lançada é a segunda maneira de lidar com exceções em Java.
Se um método (quando a instrução em é executada) pode gerar algum tipo de exceção, mas não tem certeza de como lidar com tal exceção, então este método deve declarar explicitamente para lançar As exceções indicam que o método não tratará essas exceções, mas o chamador do método é responsável por tratá-las.
Na declaração do método, a cláusula throws pode ser usada para declarar a lista de exceções lançadas.O tipo de exceção após throws pode ser o tipo de exceção gerado no método ou sua classe pai.
Declare um exemplo de exceção:

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

Lançar uma exceção manualmente

Objetos de classe de exceção Java são gerados automaticamente e lançados pelo sistema quando ocorre uma exceção durante a execução do programa, ou podem ser criados e lançados manualmente conforme necessário.
Primeiro, um objeto de classe de exceção é gerado e, em seguida, a operação throw é implementada por meio da instrução throw (enviada ao Java para ser executada arredores).
IOException e = new IOException ();
throw e;
A exceção que pode ser lançada deve ser uma instância de Throwable ou suas subclasses. A instrução a seguir produzirá um erro de sintaxe em tempo de compilação:

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 do anexo springBuffer

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);
    }
}

Acho que você gosta

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