内部类、访问权限课堂笔记
2017-03-03 17:03
267 查看
内部类的定义:一个类的定义放在另一个类的内部 内部类作为外部类的一个成员,依附于外部类而存在的
*内部类是一个独立的类,生成独立的class文件,文件名格式为:外部类类名·$内部类名
包 包名在世界范围内不重复 (域名在世界范围内不重复)
把实现相同功能的java文件放到一个目录里
Com.oracle.xxx.xxx
域名 项目名称 导包的时候写到具体的类
TRL+SHIFT+F 代码格式化
构造代码快
一般用于给类里的变量进行初始化的
该代码快早于构造方法执行
静态代码块》构造代码块》构造方法
四种类型的内部类:成员内部类,方法内部类,匿名内部类,静态内部类
1.成员内部类 :在一个包含类中定义的不使用静态修饰符的类型,与成员变量、方法同一个层次,可以访问包含类所有的成员,在包含类中创建成员内部类实例的语法 this.new innerclass(); 在包含类外创建成员内部类实例的语法。(new Outerclass()).new Innerclass(); 创建外围对象之前不可能创建内部类的对象。
2.方法内部类:定义在 方法体中的类,方法内部类只能定义该内部类的方法内实例化,不可以在此方法外对其实例化。最少使用的内部类形式,如同本地变量的定义,不允许有访问修饰符。
3.静态内部类:不能与包含类同名 创建静态内部类实例的语法:
Outer.Inner inner = new Outer.Inner();
4 匿名内部类 只用到类的一个实例 类在定义后马上用到
*匿名内部类不能有构造方法。
*匿名内部类不能定义任何静态成员、静态方法
*匿名内部类不能是public,protected,private,static
*只能创建匿名内部类的一个实例
*一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类
异常 lang不用导包
Erro是处理运行环境方面的错误,这类异常主要和硬件有关系,通常程序不对这类异常进行处理
Exception用来表示程序活动导致的错误,异常处理机制是针对Exception类的
*运行时异常RuntimeException
1.不作处理
2.使用try-catch-finally语句捕获异常
Try{
//被保护区间 第一行
//用关键字try控制
//将可能导致异常的代码放在这里
//我们可以放置1到多行代码
}
catch(MyFirstError) {
// 处理MyFirstError的代码.
//MyFirstError的异常处理句柄
}
catch(MySecondError) {
// MySecondError异常处理句柄
}finally{
//无论try块中有无异常,最后必须执行 的代码
}
3.通过throws子句声明异常(该异常我自己不去处理,如果谁调用这个方法,必须把这个异常处理掉) main方法再往上抛给jvm虚拟机
*非运行时异常 必须进行处理
一个未捕获的异常可能导致程序停止
常用异常
java.lang.ArithmeticException 算术异常
java.lang.NullPointerException 空指针异常
java.lang.ArrayIndexoutOfBoundsException 数组越界异常
java.lang.SecurityException 安全异常
Java.lang.NegativeArraySizeException 负值数组大小异常
97ee
*内部类是一个独立的类,生成独立的class文件,文件名格式为:外部类类名·$内部类名
包 包名在世界范围内不重复 (域名在世界范围内不重复)
把实现相同功能的java文件放到一个目录里
Com.oracle.xxx.xxx
域名 项目名称 导包的时候写到具体的类
TRL+SHIFT+F 代码格式化
构造代码快
一般用于给类里的变量进行初始化的
该代码快早于构造方法执行
静态代码块》构造代码块》构造方法
四种类型的内部类:成员内部类,方法内部类,匿名内部类,静态内部类
1.成员内部类 :在一个包含类中定义的不使用静态修饰符的类型,与成员变量、方法同一个层次,可以访问包含类所有的成员,在包含类中创建成员内部类实例的语法 this.new innerclass(); 在包含类外创建成员内部类实例的语法。(new Outerclass()).new Innerclass(); 创建外围对象之前不可能创建内部类的对象。
2.方法内部类:定义在 方法体中的类,方法内部类只能定义该内部类的方法内实例化,不可以在此方法外对其实例化。最少使用的内部类形式,如同本地变量的定义,不允许有访问修饰符。
3.静态内部类:不能与包含类同名 创建静态内部类实例的语法:
Outer.Inner inner = new Outer.Inner();
4 匿名内部类 只用到类的一个实例 类在定义后马上用到
*匿名内部类不能有构造方法。
*匿名内部类不能定义任何静态成员、静态方法
*匿名内部类不能是public,protected,private,static
*只能创建匿名内部类的一个实例
*一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类
异常 lang不用导包
Erro是处理运行环境方面的错误,这类异常主要和硬件有关系,通常程序不对这类异常进行处理
Exception用来表示程序活动导致的错误,异常处理机制是针对Exception类的
*运行时异常RuntimeException
1.不作处理
2.使用try-catch-finally语句捕获异常
Try{
//被保护区间 第一行
//用关键字try控制
//将可能导致异常的代码放在这里
//我们可以放置1到多行代码
}
catch(MyFirstError) {
// 处理MyFirstError的代码.
//MyFirstError的异常处理句柄
}
catch(MySecondError) {
// MySecondError异常处理句柄
}finally{
//无论try块中有无异常,最后必须执行 的代码
}
3.通过throws子句声明异常(该异常我自己不去处理,如果谁调用这个方法,必须把这个异常处理掉) main方法再往上抛给jvm虚拟机
*非运行时异常 必须进行处理
一个未捕获的异常可能导致程序停止
常用异常
java.lang.ArithmeticException 算术异常
java.lang.NullPointerException 空指针异常
java.lang.ArrayIndexoutOfBoundsException 数组越界异常
java.lang.SecurityException 安全异常
Java.lang.NegativeArraySizeException 负值数组大小异常
97ee
相关文章推荐
- JAVA学习笔记之形式参数,权限访问和内部类问题
- mojoPortal学习笔记之页面访问权限控制
- JAVA自学笔记(二):类生存周期及访问权限
- java学习笔记三——访问权限
- JAVA笔记七 (25-29包和访问权限(封装性)及接口)
- JAVA编程思想笔记【突击1】——初始化,访问权限控制,继承,多态
- java中访问权限修饰符学习笔记
- 学习笔记:android下文件访问权限
- Java 编程思想(第四版)学习笔记(6)访问权限控制
- 《unix环境编程》笔记-文件访问权限
- 《UNIX环境高级编程》笔记--文件访问权限和新文件、目录所有权
- Java学习笔记-关于默认类型或访问权限的总结
- thinking in java笔记 6 访问权限控制
- java学习笔记八——访问权限控制
- javaSE学习笔记5——访问控制权限private、default、protected、public
- FreeBSD学习笔记22-访问权限
- Java访问权限修饰符笔记
- 内部类 - JAVA课堂笔记整理
- SVN版本库(访问权限)配置实例笔记
- 《UNIX环境高级编程》笔记--文件访问权限和新文件、目录所有权