Java抽象类-创新互联

  1、抽象类:使用abstract修饰的类

成都创新互联是专业的渌口网站建设公司,渌口接单;提供网站设计制作、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行渌口网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

  抽象方法:使用abstract修饰的方法

  包含抽象方法的类必须是抽象类,但是抽象类可以不包含抽象方法。

  抽象类是需要被继承的,抽象方法是需要被重写的,建议重写抽象类中的所有方法(包含非抽象方法)。

  抽象类是不能被实例化的,只能进行继承,然后向上造型该类,实现不同的行为。

  抽象方法只有方法的定义,没有具体的实现,需要被重写。

  2、抽象类的意义:

  封装共有的行为和属性(代码复用)

  为所有的派生类提供统一的类型(向上造型)

  可以包含首项方法,为所有派生类提供统一的入口,派生类的具体实现不同,但是入口是一致的。

  3、类的设计规则:

  将派生类的共有属性和行为,抽到超类中。

  派生类的行为都一样,设计为普通方法。

  派生类的行为都不一样,设计为抽象方法,需要派生类进行继承然后重写。

  4、抽象类的例子:

  public abstract class Color{

  public void show(){

  }

  }

  class Red extends Color{

  public void show(){

  System.out.println("我是红色");

  }

  }

  class Blue extends Color{

  public void show(){

  System.out.println("我是蓝色");

  }

  }

  1234567891011121314

  public class Demo{

  public static void main( String[] args){

  Color c1 = new Red();

  Color c2 = new Blue();

  c1.show();

  c2.show();

  }

  }

  12345678

  输出:

  我是红色

  我是蓝色

  12

  5、抽象方法的例子:

  public abstract class Teacher{//抽象类

  abstract public void teaching();//抽象方法

  }

  public MathTeacher extends Teacher{     郑州祛胎记治疗价钱 http://m.zykdbhk.com/

  @Override

  public void teaching(){//重写抽象方法

  System.out.println("数学老师讲课");

  }

  }

  public EnglishTeacher extends Teacher{

  @Override

  public void teaching(){//重写抽象方法

  System.out.println("英语老师讲课");

  }

  }

  123456789101112131415

  public class Demo{

  public static void main(String[] args){

  Teacher lee = new MathTeacher();

  Tacher tom = new EnglishTeacher();

  lee.teaching();

  tom.teaching();

  }

  }

  12345678

  输出:

  数学老师讲课

  英语老师讲课


网站标题:Java抽象类-创新互联
标题路径:http://scyanting.com/article/hhojd.html