您的位置:首页 > 大数据

大数据系列修炼-Scala课程24(1)

2016-09-13 14:14 274 查看
大数据系列修炼-Scala课程24(1)

核心内容:

1、Java中的匿名类

1、Java中匿名类的概念、访问范围
1>匿名类是一种特殊的内部类

2>如果在一个方法的内部类定义了一个匿名类,则该匿名类可以访问:

(1)外部类的所有成员(试用一切内部类)

(2)包裹该匿名类的方法中的所有final类型的局部变量,其中非final类型的局部变量无法被匿名类访问

实例程序:

public class App2
{
public static void main(String[] args)
{
final Frame f = new Frame("内部类");   //包裹该匿名类的方法中的final类型的局部变量
f.setBounds(100, 100, 200, 200);
f.addWindowListener(new WindowAdapter()   //创建匿名类之实现抽象类
{
public void windowClosing(WindowEvent e)
{
f.setBounds(200, 200, 400, 400);  //包裹该匿名类的方法中的final类型的局部变量
try
{
Thread.sleep(5000); //效果可见5s
} catch (Exception e1){}
System.exit(-1);
}
});
f.setVisible(true);
}
}


2、创建匿名类的3种方式
1>创建匿名类之实现接口 (生成了一个实现接口的匿名类对象)

2>创建匿名类之继承抽象类(生成了一个继承抽象类的匿名类对象)

3>创建匿名类之继承父类 (生成了一个继承父类的匿名类对象)

实例程序:

public class App2
{
public static void main(String[] args)
{
final Frame f = new Frame("内部类");   //包裹该匿名类的方法中的final类型的局部变量
f.setBounds(100, 100, 200, 200);
f.addWindowListener(new WindowAdapter()   //创建匿名类之实现抽象类
{
public void windowClosing(WindowEvent e)
{
f.setBounds(200, 200, 400, 400);  //包裹该匿名类的方法中的final类型的局部变量
try
{
Thread.sleep(5000); //效果可见5s
} catch (Exception e1){}
System.exit(-1);
}
});
Button b = new Button("OK");
b.addActionListener(new ActionListener()//创建匿名类之实现接口
{
public void actionPerformed(ActionEvent e)
{
System.out.println("OK");
}
});
b.setBackground(Color.YELLOW);
f.add(b);
f.setVisible(true);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: