使用abstract关键字的使用

package abstract1.demo01;

//使用abstract关键字修饰的类叫做抽象类
public abstract class Father {
public static void main(String[] args) {

}

/*
* 使用abstract修饰的方法叫做抽象方法 抽象方法不能有方法体{}
*/
public abstract void method();

public abstract void eat();

public abstract void sleep();

public abstract void go();

public void testNoAbstract() {
System.out.println("抽象类中可以有非抽象方法");
}

}

------------------------------------------

package abstract1.demo01;

/*抽象类继承后两种写法:
* 1.如果不继承,子类也要是抽象类
* 2.如果子类继承父类,要重新父类方法
*/ 
//如果不继承,子类也要是抽象类
/*public abstract class Sun extends Father{

}*/
//如果不继承,子类也要是抽象类
public class Sun extends Father {
// 该继承抽象类只重写父类的抽象方法,非抽象方法不会自动生成,需要手动调用
@Override
public void method() {

}

@Override
public void eat() {

}

@Override
public void sleep() {

}

@Override
public void go() {

}

}

-------------------------------------

package abstract1.demo01;

public class TestAbstract {
public static void main(String[] args) {
// 抽象类不能创建抽象类的对象
// 子类继承父类,抽象类是有构造方法的
Sun sun = new Sun();
sun.eat();
sun.sleep();
sun.go();
sun.method();
sun.testNoAbstract();
}

}

posted @ 2018-09-05 14:10  Monica_维维  阅读(393)  评论(0编辑  收藏  举报