1.
catch(ArithmeticException e) 
{
System.out.println("Divide by 0: " + e);
}2.
public void actionPerformed(ActionEvent e)
{
        e.getSource()).setLabel("aa");
}
这两段代码 ArithmeticException e和ActionEvent e 中的e代表的是那个数据类型下的一个对象吗?并没有创建e这个对象啊。为什么可以直接e.XXXX去用他调用其他方法。 象public void actionPerformed(ActionEvent e)方法。括号里代表的是什么?传参进去吗?问题是并没有建立那个参数啊。
直接写进去就好用?

解决方案 »

  1.   

    1、不是一个
    2、因为是参数
    3、这个是swt的运行机制。你找本java的基础书看看吧。
      

  2.   

    是他的一个对象
    它是由jvm来产生的对象,异常对象和事件对象。
    象public void actionPerformed(ActionEvent e)方法是实现的抽象类的;
        还要努力啊朋友!
      

  3.   

    刚开始学的时候我也有过这种困惑,我说说自己的想法吧,也许不对
       1. lz的问题来自两个方面,对于异常是分为运行时异常和一般异常,运行时异常可以不显现的捕获,而一般异常是要有显示的不捕获在catch中引用的异常对象,是一个系统生成的引用,即系统生成的对象。你可以把catch看成一个函数,在异常发生时系统通这个catch接口来继续程序。
       2.public void actionPerformed(ActionEvent e)这个是个事件接口的方法,Java有个结构复杂的事件框架,用户利用接口来达到编程目的,我们只有把要的接口实现好,剩下的工作是由系统来完成的,具体的源代码我没读过,不知道我说对了多少
      

  4.   

    是参数但我就想知道 ActionEvent e 和 ArithmeticException e  哪来的  是自动生成的?
      

  5.   

    ActionEvent ArithmeticException   
    不都是异常类麽?
       ActionEvent e你这不是相当于在实例化它么?