接口——特殊的抽象类,使用方法和组成部分都与抽象类类似
语法:interface implements
特点:
接口属性都是公开的静态常量
接口方法都是公开的抽象方法
接口没有构造方法,动态代码块,静态代码块
接口直接引用实现多态
interface FirstInterface{
void test();
public default void show() {
}
}
class MyImp implements FirstInterface{
public void test() {
System.out.println("重写");
}
}
public class Test {
public static void main(String[] args) {
FirstInterface i1 = new MyImp();
i1.test();
}
}
内部类——一个类的内部包含一个完整类
特点:
外部类和内部类都可以生成独立字节码文件
内部类可直接使用外部类的私有成员属性,而不破坏封装性
外部类的具体实现可以交给内部类来完成
class Out{
private String name = "小明";
public int add(int a,int b) {
return new In().add(a,b);
}
class In{
private final static int count = 1;
public int add(int a,int b) {
return a+b;
}
public void intest() {
System.out.println(name);
}
}
}
public class Test{
public static void main(String[] args) {
//实例化外部类对象,调用add方法
Out outter = new Out();
System.out.println(outter.add(3,4));
//直接实例化内部类对象,调用内部类的方法
Out.In in = new Out().new In();
System.out.println(in.add(5,6));
in.intest();
}
}
原创文章,作者:wure,如若转载,请注明出处:https://blog.ytso.com/tech/java/275128.html