Java 抽象类
Posted jizizh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 抽象类相关的知识,希望对你有一定的参考价值。
新的一年,新的开始.
抽象类
- 抽象类和抽象方法用abstract来修饰
- 如果一个类包含抽象方法,那么该类必须是抽象类.
- 抽象类不能被实例化,不能被new.
- 构造方法,用static修饰的方法不能声明为抽象方法
- 抽象类中抽象方法只是声明,不能给出方法的具体实现过程
Test.java
abstract class A {
A() {
System.out.println("adstract created");
}
abstract void example();//如果一个类包含抽象方法,那么该类必须是抽象类,也就是A必须是抽象类
void method() {//成员方法,成员变量,构造方法的访问方式都是和普通类一样
System.out.println("method created");
}
}
class B extends A {
void example() {//抽象类子类必须给出抽象中抽象方法的具体实现,除非该类也是抽象类
System.out.println("adstract method overload of B");
}
}
class C extends A {
void example() {
System.out.println("adstract method overload of C");
}
}
public class Test {
public static void main(String []args) {
//A error = new A(); //抽象类不能被实例化,不能被NEW
System.out.println("-----B-----");
A test = new B();
test.example();
test.method();
System.out.println("-----C-----");
A test2 = new C();
test2.example();
test.method();
}
}
运行结果
总结
抽象类除了不能实例化对象外,其他功能依然存在.成员变量,成员方法和构造方法的访问方式和普通类一样.
以上是关于Java 抽象类的主要内容,如果未能解决你的问题,请参考以下文章