package com.itheima.d3_abstract;
/**
* 抽象类
* 在Java中有一个关键字叫:abstract,它就是抽象的意思,可以用它修饰类、成员方法。
* abstract修饰类,这个类就是抽象类;修饰方法,这个方法就是抽象方法。
* <p>
* 抽象类的注意事项、特点
* 1 抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类。
* 2 类该有的成员(成员变量、方法、构造器)抽象类都可以有。
* 3 抽象类最主要的特点:抽象类不能创建对象,仅作为一种特殊的父类,让子类继承并实现。
* 4 一个类继承抽象类,必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类。
* <p>
* 抽象类中的抽象方法的访问类型可以是public,protected和(默认类型,虽然 eclipse下不报错,但应该也不行)
* 抽象类中的静态成员变量的访问类型可以任意
*/
class Test1 {
}
// 抽象类
public abstract class A {
//成员变量
private String name;
static String schoolName;
//构造方法
public A(){
}
//抽象方法
public abstract void test();
//实例方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
//B类继承A类,必须复写test方法
//class B extends A {
// @Override
// public void test() {
//
// }
//}
//B类基础A类,此时B类也是抽象类,这个时候就可以不重写A类的抽象方法
abstract class B extends A {
}
本文链接:https://blog.oalo.cn/study/java-13.html