9.抽象类和抽象函数

1.抽象函数语法特征(天生就是用来当爹的)

   定义:只有函数的定义,没有函数体的函数(没有实体)。不能被初始化。
    abstract void fun();使用abstract定义的类被成为抽象类
 
    特性:
   1.抽象类 不能够用new生成对象,天生用来被继承;
       子类继承抽象类,再复写抽象函数,使该类就不是抽象函数。即可生成子类对象。
    2.如果一个类当中包含抽象函数, 则该类必须被声明为抽象类;
   3.如果一个类当中没有抽象函数,这个类也可以被声明为抽象类
      主要是不让别人生成对象。今后写程序用得到,abstract也称为基类,用来被继承。
   
2.抽象类可以有构造函数?
     条件:抽象类的确不能生成对象,但是因为继承,子类可以生成 有构造函数,在生成子类对象的时候调用了抽象类的构造函数。抽象类必须要被extend过。Object不是完整意义上的抽象类,因为它没有必须被覆盖过的方法。
 
3.抽象类的作用
note:如果一段代码在语义上是有错误的,那么在语法上也应该有错误, 语法错误比语义错误更容易找到
        比如一个父类不是抽象类,那么在子类有可能对父类的部分函数忘记复写而不容易发现。
        如果一个类,某一个函数我们无法确定。必须用子类实现,无法通用,则把该函数定义为抽象函数,类定义为抽象类。
 



转载于:https://www.cnblogs.com/fruitbolgs/p/4151350.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值