异常在子父类覆盖中的体现
2015-07-25 17:13
295 查看
/*
* 7.异常在子父类覆盖中的体现:
* a.子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或者该异常的子类。
* b.如果父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集。
* c.如果父类或者接口的方法中没有异常抛出,那么子类在覆盖方法时,也不可能抛出异常。
* 如果子类方法发生了异常,就必须要进行try处理,绝对不能抛出。
*/
class AException extends Exception{
}
class BException extends AException{
}
class CException extends Exception{
}
class Fu{
public void show() throws AException{
}
}
class Zi extends Fu{
//
//抛出父类的异常
public void show() throws AException{}
//抛出父类异常类的子类
//public void show() throws BException{}
//不能抛出与父类无关的异常类
// public void show() throws CException{}
}
public class ExtendsException {
public static void main(String args[])
{
}
}
* 7.异常在子父类覆盖中的体现:
* a.子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或者该异常的子类。
* b.如果父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集。
* c.如果父类或者接口的方法中没有异常抛出,那么子类在覆盖方法时,也不可能抛出异常。
* 如果子类方法发生了异常,就必须要进行try处理,绝对不能抛出。
*/
class AException extends Exception{
}
class BException extends AException{
}
class CException extends Exception{
}
class Fu{
public void show() throws AException{
}
}
class Zi extends Fu{
//
//抛出父类的异常
public void show() throws AException{}
//抛出父类异常类的子类
//public void show() throws BException{}
//不能抛出与父类无关的异常类
// public void show() throws CException{}
}
public class ExtendsException {
public static void main(String args[])
{
}
}
相关文章推荐
- 一个简单的asp数据库操作类
- C#实现用于操作wav声音文件的类实例
- 在线管理数据库 类
- Lua面向对象之类和继承浅析
- Lua中类的实现原理探讨(Lua中实现类的方法)
- Lua中的类编程代码实例
- C#常用目录文件操作类实例
- c# 类和成员的修饰详细介绍
- C#中实现判断某个类是否实现了某个接口
- C#类的创建与初始化实例解析
- C#基础语法:结构和类区别详解
- 深入c# 类和结构的区别总结详解
- c#结构和类的相关介绍
- C#中类与结构的区别实例分析
- C#实现读写ini文件类实例
- C#自定义的字符串操作增强类实例
- C#自定读取配置文件类实例
- MySQL抛出Incorrect string value异常分析
- C++实现不能被继承的类实例分析
- C#生成不重复随机字符串类