面向对象(抽象类)

什么是抽象类?

可以简单理解为光说不做,例如:好好学习,将来发大财,就比较抽象!

只有方法声明,没有方法主体,那么这就是一个抽象类

抽象类的关键字:abstract

当定义了抽象函数的类也必须被abstract关键字修饰,被abstract关键字修饰的类是抽象类。

抽象方法定义的格式:

public abstract 返回值类型 方法名(参数);

抽象类定义的格式:

public abstract class 类名 {

 

实体类里只有方法声明,子类里面有方法声明 例如:

//研发部员工 
public abstract  class Developer {
	public abstract void work();//抽象函数。需要abstract修饰,并分号;结束 方法的声明
}

  继承之后开始写方法主体

//JavaEE工程师
public class JavaEE extends Developer{
	public void work() {
		System.out.println("正在研发淘宝网站");
  }

  

//Android工程师
public  class Android extends Developer {
	public void work() {
		System.out.println("正在研发淘宝手机客户端软件");
	}
}

  抽象类的特点:

首先抽象类不可以直接创建对象,因为调用抽象的方法没有任何的意义

只有重写了抽象类里所有的方法之后,子类才可以创建对象,否则子类它仍然是一个抽象方法

抽象类关键字abstract不可以和private共存!

private:私有的方法子类是无法继承到的,也不存在覆盖,而abstract和private一起使用修饰方法,abstract既要子类去实现这个方法,而private修饰子类根本无法得到父类这个方法。互相矛盾。

抽象类一定是个父类吗?

对,因为不断从父类里面抽取!

猜你喜欢

转载自www.cnblogs.com/awdsjk/p/10913738.html