JAVA——1_30

一、内部类及匿名内部类

格式:public class OuterClass

{

   private int

      public class InnerClass

{

        

}

}  

1、内部类可以直接使用外部类中定义的所有属性和方法

2、外部类中的静态属性和方法不能在内部类中直接使用

3、创建内部类对象

   实例内部类:

外部类.内部类 实例名=外部类对象名.new内部类构造方法();

   静态内部类:

        内部类 对象名=new外部类.内部类构造方法();

匿名内部类:

主要在实现接口和继承父类中体现

new 接口

{

   实现接口中的所有方法

}

 

new 抽象类

{

 实现父类中所有方法

}

 

二、Java类的组成成员

    1.属性

    2.方法

    3.构造方法

    4.内部类

    5.代码块

        普通代码块

        {

            比构造方法先执行,主要作用:

进行类中属性的默认赋值,可以给常量赋值

        }

        静态代码块

        static {

            在类加载到Java虚拟机中时就运行了

            比构造方法先执行,主要作用:

进行类中属性的默认赋值,可以给常量赋值

        }

    Java中子类对象创建过程

        父类中的静态代码块->子类静态代码块->父类代码块->父类构造方法->子类代码块->子类构造方法

三、Java异常处理

1. Error:导致虚拟机崩溃,此类错误不好处理(e.g内存溢出)

2. Exception:非正常,可以用代码处理

 Error Exception都是类)

  常见异常:所有的异常父类都是都是Exception

     IO流:

           Java.lang.SQLException

     JDBC数据编程:

           java.sql.SQLException

     运行时异常:java.lang.RunningTimeException

           空指针异常:java.lang.NullPointerException

           数组索引越界异常:java.lang.ArrayIndexOutOfBoundsException

           算术异常:java.lang.ArithmeticException

           数字格式异常:java.NumberFormatException

           类转换异常: java.lang.ClassCastException

 

四、异常处理

1. throws

格式:方法名() throws 异常列表{}

该异常则由方法的调用者来处理或者继续抛出

依然会中断程序

2. try-catch

   格式:

try {

     //有可能出现异常的代码,若无异常就不会到catch中运行

}

   catch(可能出现的异常类型 变量名)

{

//异常处理代码1,一般是打印出异常内容

}

   catch(可能出现的异常类型 变量名)

{

//异常处理代码2,一般是打印出异常内容

 

}

注意:catch ()括号中的异常类型必须是从子类到父类,否则底下能处理的,上面的也能处理

......

finally

{

  //无论是否发生异常都必须执行的代码

}

自定义异常

定义类extends Exception{

   构造方法

}

引发异常

throw new 异常构造方法();

注意:return throw关键字下一行不能直接跟代码

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值