abstract普通类继承抽象类要把抽象类中的所有抽象方法都覆盖,
抽象类继承抽象类不用。抽象类不能被创建对象。
普通类不能有抽象方法,抽象类可以有普通方法。
创建了抽象父类的对象new后面是子类对象是可以实现的。
implements用来继承接口,
interface接口中不存在具体的方法,接口中只存在抽象方法,属性只能是全局的静态变量。
接口中的修饰符可以省略,但其默认值并不是缺省的。
类必须覆盖接口的所有方法。接口继承时不能修改方法作用域。
接口内定义的常量就可以用类名.方法名。这些值被存在该接口的静态存储区域内。
同样,创建了抽象接口的对象new后面是子类对象是可以实现的。
内部类,不能静态声明,可以用私有的修饰。如果想从外部类的非静态方法之外的任意位置创建某个内部类的对象,呢么必须具体的指出这个对象的类型:OuterClassName.InnerClassName。内部类还拥有其外部类的元素访问权。如果你想创建某个内部类的对象,就需要提供内部类所在外部类的对象,这是需要使用.new语法。
public class DotNew {
public class Inner{}
public static void main(String[] args) {
DotNew dotNew = new DotNew();
DotNew.Inner inner = dotNew.new Inner();
}
}
像不需要外部类的引用,就需要创建的是嵌套类(静态内部类)。
定义在一个方法内的类需要在定义代码的后面才能使用该类。