首页 > 代码库 > Java面向对象㈢ -- 内部类
Java面向对象㈢ -- 内部类
内部类必须要依赖于继承或实现一个接口。
内部类可以实现Java多继承,内部类访问外表类的局部变量或参数时,则该局部变量或参数必须被final修饰。内部类不能包含有static的变量和方法,原因是因为内部类依赖于外部类,它才能创建自己。
内部类可以任意的访问外部类的成员,即使以private修饰,内部类需要通过外部类来访问。内部类的形式可以有继承,实现和参数式。访问外部类时使用外部类名.this。
内部类编译后文件名是外部类$内部类。
同时还有一个匿名内部类,直接new()加所要使用的函数。
内部类可以出现在成员位置和局部位置,匿名内部类则在局部位置。
interface In{
void listen();
}
class Outter{
private int i = 1;
public void say(){
final int i = 2;
new In(){
public void listen(){
System.out.println(i);
}
}.listen();
}
}
public class Demo2 {
public static void main(String[] args) {
new Outter().say();
}
}
输出:
2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。