下列内部类的正确用途是( )。 Btnn.addActionListener(new AetionListener() { public void actionPerformed(AetionEventevent) { String s=input.getText(); Output.setText("Hello"+s+",Welcome You!"); } })A.用于访问外部类的数据B.用于进行事件处理C.隐藏起来不被同一包中的其他类所见D.生成事件适配器

题目

下列内部类的正确用途是( )。 Btnn.addActionListener(new AetionListener() { public void actionPerformed(AetionEventevent) { String s=input.getText(); Output.setText("Hello"+s+",Welcome You!"); } })

A.用于访问外部类的数据

B.用于进行事件处理

C.隐藏起来不被同一包中的其他类所见

D.生成事件适配器


相似考题
更多“下列内部类的正确用途是( )。Btnn.addActionListener(new AetionListener() {public void action ”相关问题
  • 第1题:

    下列内部类的正确用途是( )。 btnn.addActionListener(new //注册监听器 ActionListener() { public void actionPerformed(ActionEvent event) { String s=input.getText(); output.setText("Hello"+s+”,Welcome You!"); } });

    A.用于访问外部类的数据

    B.用于进行事件处理

    C.隐藏起来不被同一包中的其他类所见

    D.生成事件适配器


    正确答案:B
    解析:本题考查Java语言内部类的概念。内部类是在一个类的内部嵌套定义的类,一般是用来生成事件适配器,可以定义多个内部类去继承不同事件适配器类,使事件处理很方便。在本题中,内部类并不是用来生成事件适配器,而是实现事件处理。btnn.addActionListener (new ActionListener())语句是注册监听器进行授权,该方法的参数是事件处理者对象。public void actionPerformed(ActionEvent event)语句是系统产生的ActionEvent事件对象被当作参数传递给该方法,本接口中只有一个方法,因此事件发生时,系统会自动调用本方法,编写程序时把代码写在这个方法里即可。比如,本题中String s=input.getText()语句就是获得输入的字符串,然后使用output.setText("Hello"+s+", Welcome You!")语句实现输出。

  • 第2题:

    在用new创建内部类实例时,要在 new前面冠以对象变量。


    正确

  • 第3题:

    在用new创建内部类实例时,要在new前面冠以对象变量


    错误

  • 第4题:

    阅读以下说明和Java程序,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。
    【说明】
    以下Java代码实现一个简单绘图工具,绘制不同形状以及不同颜色的图形。部分接口、类及其关系如图5-1所示。




    【Java代码】
    interface?DrawCircle?{? //绘制圆形 public(1) ;}class?RedCircle?implements?DrawCircle?{? ?//绘制红色圆形???????public?void?drawCircle(int?radius,intx,?int?y)??{????????????System.out.println("Drawing?Circle[red,radius:"?+?radius?+",x:"?+?x?+?",y:"?+y+?"]");???????}}class?GreenCircle?implements?DrawCircle?{????//绘制绿色圆形??????public?void?drawCircle(int?radius,?int?x,int?y)?{???????????System.out.println("Drawing?Circle[green,radius:"?+radius+",x:?"?+x+?",y:?"?+y+?"]");??????}}abstract?class?Shape?{????//形状? protected? ? (2)???;? ? public?Shape(DrawCircle?drawCircle)?{? ?this.drawCircle=?drawCircle;? ? ? public?abstract?void?draw();}class?Circle?extends?Shape?{? //圆形? ?private?int?x,y,radius;? public?Circle(int?x,int?y,intradius,DrawCircle?drawCircle)?{? ?(3)???;? this.x?=?x;? ? ? this.y?=?y;? ?this.radius?=radius;? }? ? ?public?void?draw()?{? ? drawCircle.? ?(4)? ?;? ? ? }}public?class?DrawCircleMain?{? public?static?void?main(String[]?args)?{? Shape?redCircle=new?Circle(?100,100,10,? (5) );//绘制红色圆形? Shape?greenCircle=new?Circle(200,200,10,(6) );//绘制绿色圆形? ?redCircle.draw(); greenCircle.draw();? ?}}


    答案:
    解析:
    (1)void drawCircle (int radius,int x,int y)
    (2)DrawCircle drawCircle
    (3)super.drawcircle=drawcircle
    (4)drawCircle(radius,x,y)
    (5)new RedCircle()
    (6)new GreenCircle()【解析】
    第一空是填接口里面的方法,在接口的实现里面找,可以发现应该填void drawCircle (int radius,int x,int y)。
    第二空可以根据后面this drawCircle=drawCircle判断,这里应该有一个drawCircle属性,因此应该填)DrawCircle drawCircle。
    第三空这里用super,用super. drawcircle来引用父类的成员。
    第四空调用drawCircle(radius,x,y)方法。
    第五、六空分别创建一个红色圆形对象和一个绿色圆形对象作为Circle里面的实参。

  • 第5题:

    29、在用new创建内部类实例时,要在 new前面冠以对象变量。


    正确