抽象类详解

package test9;
/*
 * 1.如何定义抽象类?
 * class关键字前加abstract
 * 2.抽象类无法被实例化,也就是无法创建对象
 * 3.虽然抽象类没有办法实例化,但抽象类也有构造方法,该构造方法是给子类创建对象用的,一般会用到继承和多态
 * 4.抽象类可以定义抽象方法:
 * 抽象方法的语法:在方法的修饰符列表中添加abstract关键字,并且抽象方法应该以;结束,而不是{}
 *  例如,public abstract m1();
 *  5.如果一个非抽象类继承抽象类,必须将抽象类中的方法进行覆盖重写,改成非抽象方法因为抽象方法一定是出现在抽象类中的
 */
public class test9 {


public static void main(String[] args) {
a a1=new b();//多态,创建父类型对象指向子类型
}  


}


abstract class a{
a(){ //抽象类中可以有抽象方法也可以没有,但抽象方法一定出现在抽象类中
System.out.println("a````");
}

}


class b extends a{
b(){//构造方法创建不一定调用对象,可以用super去调用
System.out.println("b````");
}
}

猜你喜欢

转载自blog.csdn.net/rolic_/article/details/80194353