[Java视频笔记]day10(待完善)

finally里放的是一定执行的代码.

finally代码块:定义一定执行的代码。通常用于关闭资源。

class NoException extends SQLException
{

}
public void method() throws NoException
{
	try
	{
		链接数据库

		数据操作  //throw new SQLException();
	}
	catch (SQLException e)
	{
		对数据库进行异常处理
		throw new NoException();
	}
	finally
	{
		关闭数据库链接动作 //该动作,无论数据操作是否成功,一定要关闭资源
	}
}


第一个格式:

try
{
	
}
catch ()
{
}

第二个格式:

try
{
	
}
catch ()
{
}
finally
{
}

第三个格式:

try
{
	
}
finally ()
{
}

class Demo
{
	public void method() 
	{
		try
		{
			throw new Exception();
		}
		catch (Exception e)  //问题解决
		{

		}
	}
}

编译能通过catch里面处理了异常,不用函数上声明

没有catch就是没有处理

 

记住一点:catch是用来处理异常,没有cath就代表异常没处理过,如果该异常时检测时异常,那么必须声明。

class Demo
{
	public void method() throws Exception
	{
		try
		{
			throw new Exception();
		}
		finally
		{
			//关闭资源
		}
	}
}

编译能通过

 

异常在子父类覆盖中的体现:

1. 子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法只能抛出父类的异常或者该异常的子类。

2. 如果父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集。

3. 如果父类或者接口的方法中没有异常抛出,那么子类在覆盖方法时,也不可以抛出异常。如果子类方法发生了异常,就必须进行try处理,绝对不能抛

class AException extends Exception
{
}

class BException extends AException
{
}

class CException extends Exception
{
}

/*
Exception 
    --AException
	    --BException
	--CException
*/
class Fu
{
	void show() throws  AException
	{

	}
}

class Zi extends Fu
{
	void show() throws AException //或BException 不能抛 CException
}

(package)

1.对类文件进行分类管理

2.给类提供多层命名空间

3.写在程序文件的第一行

4.类名的全称是报名.类名

5.包也是一种封装形式

 

总结:

包与包之间进行访问,被访问的包中的类以及类中的成员,需要public修饰。

不同包中的子类还可以直接访问父类中被protected权限修饰的成员。

包与包之间可以使用的权限只有两种  public protected

 

publc           protected         default  private

同一个类中         ok        ok            ok      ok

同一个包中         ok        ok            ok      no

子类               ok        ok            no      no

不同包中           ok        no            no      no

 

为了简化类名的书写,使用一个关键字,import

Import导入的是包中的类。

c:\\myclass\packb\DemoA.class

c:\\myclass\packb\hah\DemoZ.class

如果写import packb.* 不能直接使用DemoZ 因为只能导入packb下的类,不能导入packb下子包的类

建议不要写通配符*,需要用到包中的哪个类,就导入哪个类

类重名时使用时必须加包名

建议定义包名不要重复,可以使用url来完成定义,url是唯一的。

package cn.itcast.demo

package cn.itcast.test

 

jar

java的压缩包

方便项目的携带

方便使用,只要在class中设置



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值