java abstruct class
抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。
由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。
1.不可被实例化。(不能 new)
2.抽象类有构造器 。(凡是类都有构造器)
3.抽象方法所在的类,一定是抽象类。
4.抽象类中可以没有抽象方法。
java static class
一个内部类中若包含其它的静态成员,则这个内部类本身一定要被声明成静态的。
1)子类是不继承父类的static变量和方法的。因为这是属于类本身的。但是子类是可以访问的。
2)子类和父类中同名的static变量和方法都是相互独立的,并不存在任何的重写的关系。
2)子类和父类中同名的static变量和方法都是相互独立的,并不存在任何的重写的关系。
子类是可以访问的意思是:
public class Parent {
public static void staticMethod(){
System.out.println("Parent staticMethod run");
}
}
public class Son extends Parent {
//...
}
package com.wrh.teststaticmethod; public class Test { public static void main(String[] args) { Parent child=new Son(); child.staticMethod();//输出:Parent staticMethod run Son s=new Son(); s.staticMethod();//输出:Parent staticMethod run } }
运行结果如下
Parent staticMethod run Parent staticMethod run