抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。抽象类有点类似“模板”的作用,目的是根据其格式来创建和修改新的类。对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类来创建对象。当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract.

  在抽象类中的成员方法可以包括一般方法和抽象方法。抽象方法就是以abstract修饰的方法,这种方法只声明返回的数据类型、方法名称和所需的参数,没有方法体,也就是说抽象方法只需要声明而不需要实现。当一个方法为抽象方法时,意味着这个方法必须被子类的方法所重写,否则其子类的该方法仍然是abstract的,而这个子类也必须是抽象的,即声明为abstract.

  抽象类中不一定包含抽象方法,但是包含抽象方法的类一定要被声明为抽象类。抽象类本身不具备实际的功能,只能用于派生其子类。抽象类中可以包含构造方法,但是构造方法不能被声明为抽象。

  调用抽象类中的方法(抽象方法和非抽象方法),如果方法是static的,直接 抽象类。方法  就可以了;如果是非static的则必须需要一个继承的非抽象类,然后用这个非抽象类的实例来调用方法。

  抽象类可以实现接口,接口中的方法 在抽象类中可以不实现,当有子类继承 抽象类时,并且子类不是抽象类时,子类需要将抽象类中的 抽象方法和接口中的方法都实现

  抽象类不能用final来修饰,即一个类不能既是最终类又是抽象类。

  总结: abstract不能与private、static、final、native并列修饰同一个方法。

注意:子类继承父类方法后,这个子类对象如果执行方法的话,只要子类重写了就执行子类的,不执行父类的。

最新文章

  1. 【洛谷P2889】Milking Time
  2. 第三方登录 ----转载自简书,作者 <<碧霄问鼎>>
  3. Solr之搭建Solr5.2.1服务并从Mysql上导入数据
  4. 收缩 虚拟硬盘 shrink vhd
  5. FreeModbus Slave RTU 精简版源代码【worldsing 笔记】
  6. 服务器编程入门(7)I/O复用
  7. Javascript多线程引擎(七)
  8. WORK
  9. Windows Server 2012 R2安装SqlServer 2016
  10. MySQL 性能优化-数据库死锁监控
  11. js 对象的循环
  12. Linux之SSH免密登录
  13. C++笔记(2017/2/9)
  14. 学JS的心路历程-函式(四)apply、call
  15. Longest Substring Without Repeating Characters leetcode java
  16. Linux系统内核main函数执行之前
  17. SaltStack入门篇(二)之远程执行和配置管理
  18. Atos cannot get symbols from dSYM of archived application
  19. 孤荷凌寒自学python第六天 列表的嵌套与列表的主要方法
  20. UVa12716:gcd等于xor(打表+类素数筛+差分约束)

热门文章

  1. Java设计模式(三)原型模型 适配器型号
  2. 【C语言的日常实践(十六)】字符串输出功能puts、fputs和printf
  3. CSharp设计模式读书笔记(20):观察者模式(学习难度:★★★☆☆,使用频率:★★★★★)
  4. SVN & Git (二)
  5. Vs2012 构建配置 Lua5.2.3
  6. ZOJ3640之简单慨率DP
  7. VS2012编写C语言项目
  8. 步步详解近期大火的density_peak超赞聚类
  9. Android基础之——startActivityForResult启动界面并返回数据,上传头像
  10. window批量-6 rem