内部类
1.内部类的概念
内部类就是在一个类的内部在定义一个类,比如A类中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类 2.内部类的种类 (1)成员内部类 Outer类的代码:点击查看代码
package com.Tang.oop.demo10;
public class Outer {
private int id = 10;
public void out(){
System.out.println("这是外部类的方法");
}
public class Inner{
public void in(){
System.out.println("这是内部类的方法");
}
//获得外部类的私有属性
public void getID(){
System.out.println(id);
}
}
}
点击查看代码
package com.Tang.oop.demo10;
public class Application {
public static void main(String[] args) {
//先创建外部类对象
Outer Twq = new Outer();
//用外部类对象去实例化内部类
Outer.Inner inner = Twq.new Inner();
inner.in();
inner.getID();
}
}
(2)静态内部类
下图当内部类变成静态内部类之后,由于静态类是和Outer一起加载的且在Outer类创建的之前,静态类就已经存在了,因此,一个已经存在的类去调用一个还不存在的属性当然会报错。解决方法:可以将外部类的私有属性也变成静态的
(3)局部内部类
(4)匿名内部类