内部类
就是位于外部类成员位置的类
特点:
可以使用外部类的成员变量和方法不受private限制
为什么要用内部类:
只在类或接口中执行一次,为了使用不创建新类,减少代码冗余,所以用内部类,可以使用匿名内部类
好处:
可以直接使用外部类成员,使用更加方便。例如在服务器端创建 一个内部类继承Thread,进行监听
意义:
1.将只有在某个类中使用的功能定义在内部中,并可以使用不同访问权限修饰控制
2.可以实现多继承
3.实现封装,将某些功能定义在内部类中,可以通过访问修饰符进行控制
匿名内部类:
有些功能只用一次,没必要创建一个单独类,在java中提供了一个匿名的类,用来实现接口/继承抽象类,在哪使用之间在哪new,例如new接口/抽象类,这个都不是创建接口的对象,而是创建了一个匿名内部类,是对内部类在语法上的一种简化
多继承:
java
public class Father{
public String powerFul = "aa";
}
public class Mother{
public String wealthy = "bbb";
}
java
public class Son{
class Extends_Father extends Father{
}
class Extends_Mother extends Mother{
}
public void sayHello(){
String father=new Extends_Father().powerFul;
String mother=new Extends_Mother().wealthy;
}
}
这样子就可以在Son里面使用Mother和Father两个类里的成员变量