abstract抽象类
我们在创建父类子类的时候,很多时候因为子类的需要,我们会在父类中创建一下方法,而这些方法又在父类中没有任何实际意义,并且在子类中又是必须要继承过来的使用的,这个时候我们就可以设置该方法为抽象方法。一个包含了抽象方法的类就必须是一个抽象类。抽象类是不能被直接实例化的。可以把抽象类想想成一个占位,因为他的存在,所以我们可以在每一个子类中都有了这个方法的存在。并且你如果不能在子类中去实例化这个抽象方法,那么你的这个子类也将要被声明为一个抽象类。直到所有的抽象都被实例化了。想要将一个类或者方法设置为抽象类或者方法,我们就需要用到关键字abstract。
现在用示例来具体说明一下:
编辑攻击Eclipse
首先创建Shapes.java作为父类并使用关键字abstract将类声明为抽象类。
public abstract class Shapes {
public abstract Shapes getProject(Shapes s);
}
我们首先来看声明一个抽象类的格式是,在访问修饰符的后面加上一个abstract 这样就可以声明这个类是一个抽象类。(一个抽象类可以包含抽象和非抽象方法)。然后我们来看抽象类里面的抽象方法,抽象方法的格式类似抽象类,也是在访问修饰符后面加上一个abstract关键字并且,抽象方法是没有方法体的,我们只需要写完小括号之后加上分号就可以了。
然后我们在来建一个Rectangles.java文件作为子类也是它的实现类。
public class Rectangles extends Shapes{
public Shapes getProject(Shapes s) {
return s;
}
}
在这里我们只需要将父类中的抽象方法实现了就可以了。
如果我们没有实现父类中的抽象类,那么它下面的子类都要声明为抽象类,直到有一个子类将父类中的抽象方法实现了。