A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙运强 黑马帝   /  2011-10-28 12:38  /  2019 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Try{}catch(Exception e){}
其中e是什么时候初始化的。为什么必须要写Exception呢??

查API是经常看见某些方法需要一些对象作为参数

addActionListener(ActionListener l)  
需要创建实现了ActionListener接口的对象

void actionPerformed(ActionEvent e)
而这儿就不用创建ActionEvent实例呢?

怎么判断什么时候需要创建对象,什么时候不需要创建对象,直接写就可以?
有什么诀窍吗?

评分

参与人数 2技术分 +2 收起 理由
杨玉揆 + 1
李印东老师 + 1 赞一个!

查看全部评分

2 个回复

倒序浏览
是在调用的时候传递给他的,void actionPerformed(ActionEvent e)这里的是声明ActionEvent 类型的引用,你调用的时候你必须的传给这个方法一个ActionEvent类型的对象(若是接口和抽象类就必须传递他们的子类对象),其实这个基本类型的参数是一样的。
回复 使用道具 举报
黄健 黑马帝 2011-10-29 10:23:00
藤椅
例如:Try{  run();   }catch(Exception e){},这里为什么要try catch呢,肯定是run()方法抛出异常了,run()方法大概是这样 void run() throws Exception{  throw New Exception();   }
try catch 中的e就是 run()方法 抛出的那个异常对象,try catch 中的Exception 是用来声明一个变量e指向前面抛出的异常对象,这样才能在catch后面调用异常对象的方法。
addActionListener(ActionListener l)  和 void actionPerformed(ActionEvent e) 都是声明一个方法,参数中写的是这个方法需要什么类型的东西,如果是引用类型,则在调用时需要传给它一个对象,如果是基本类型,则传给它对应的值即可。


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马