48.抽象方法和抽象类

自作多情 提交于 2020-02-01 00:32:16

抽象方法

使用abstract修饰的方法,没有方法体,只有声明

抽象类

包含抽象方法的类就是抽象类

  1. 有抽象方法的类只能定义成抽象类

  2. 抽象类不能实例化,即不能用new来实例化抽象类。

  3. 抽象类可以包含属性、方法、构造方法。但是构造方法不能用来new实例,只能用来被子类调用。

  4. 抽象类只能用来被继承。

  5. 抽象方法必须被子类实现。

package OOprogress2;

public class testAbstractClassAndFunction {
	public static void main(String[] args) {
//		Animal2 a = new Animal2();  //error 抽象不能new实例化对象
		Animal2 a = new Dog2();
		a.shout();
		//包装类
		//Integer i;  //extends Number(抽象类 )
	}
}

//抽象类
abstract class Animal2{
	//抽象方法
	abstract public void shout();
	
	//抽象类中也可有普通方法
	public void run() {
		System.out.println("跑啊跑!");
	}
}

class Dog2 extends Animal2{
	@Override
	public void shout() {
		System.out.println("汪汪汪");
	}
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!