
抽象类:
1.使用abstract修饰的方法叫做抽象方法
2.方法为抽象类的话,类名也必须为抽象类 使用abstract修饰这个类
abstract class Shape01{
abstract public void draw();
}
3.抽象类是不能够进行实例化 *** 作的,要想使用,只能创建该抽象类的子类,然后让子类重写抽象类的方法
4.除此之外,抽象类和普通的类是几乎一样的有方法,成员。
5.抽象类不能进行实例化 *** 作,但是可以被继承(也可说抽象类就是为了被继承),在普通方法中可以选择重写或者不重写父类中的构造方法,但是在抽象类中,必须重写父类中的抽象方法,这是Java抽象类的一个好处,可以提醒
6.当一个普通类继承这个抽象类后,如果这个抽象类中包含着抽象方法,那么久必须重写这个抽象方法
7.如果一个抽象类A继承另一个抽象类B,那么此时这个抽象类A可以不重写B当中的抽象方法
8.抽象方法不能是private,static,final。
9.抽象类不一定是抽象方法,但是有抽象方法的类一定是一个抽象类
abstract class Shape01 {
public int a;
public static int b;
public void func() {
}
abstract public void draw1();
}
/*
* 如果不想重写该抽象类的方法
* 那么就设置为abstract类
* */
class Rect01 extends Shape01 {
@Override
public void draw1() {
System.out.println("画一个矩形");
}
}
class Flower01 extends Shape01{
@Override
public void draw1() {
System.out.println("画一朵小花");
}
}
如果之前的没有重写 就由谁继承谁重写的方式重写
//class A extends Rect01{
//
// @Override
// public void draw1() {
//
// }
//
// @Override
// public void draw2() {
//
// }
//}
public class Demo02 {
public static void drawMap(Shape01 shap){
shap.draw1();
}
public static void main(String[] args) {
drawMap(new Rect01());
drawMap(new Flower01());
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)