PHP5面向对象中抽象类和抽象方法的应用

1,抽象类,接口,多态之间的关系。

     a,抽象类是一种特殊的类,接口是一种特殊的抽象类。多态就要使用到接口或者抽象类。

2,抽象类的定义

     

     a,什么是抽象方法?----->如果一个类中的方法没有方法体(没有实现的方法---没有大括号,直接以分号“;”结束),就是抽象方法,如--------->abstract function hello();

     如果一个方法是抽象方法,必须使用关键字abstract修饰!

 

     b,什么是抽象类?如果一个类中有一个(多个)方法是抽象方法,则这个类就是抽象类。需要使用abstract关键字修饰。

          如:abstract class test{

                      abstract function hello();

                      function say(){

                              echo "你好";

                      }

                }

 

          抽象类中必须存在一个抽象方法!同时抽象类中可以有其他的非抽象方法,属性,常量等。

          不能对抽象类进行实例化!

          要想使用抽象类,就必须使用一个类去继承抽象类。而且要想使用这个子类,必须对父类的抽象方法进行重载。

     c,为什么使用抽象方法(总结)?

         

          作用:定义一些规范,让子类去实现自己的功能。      

                   将自己写的程序模块加载到已经写好的程序中去。(假如你开发一个程序模块,同时你需要调用同事写的一些方法、类等,你总不能等待同事开发好以后,再继续自己的工作。所以,在自己的程序里面定义好一个抽象类(就和定制了规范一样),让同事去根据你定制好的规范,写一些继承的子类、方法重载等,实际上你提供了接口,同时提供了实现,你又实现了调用执行。工作可以异步进行,同时程序在后期可以进行良好的拓展。)

 

 

     d,抽象类(规范)的定义中需要注意:

          这个抽象类中的非抽象属性、方法是公有的。是具有相同特征的子类需要共有继承的。

          其中多个子类需要实现的差异化功能(重写父类中的抽象方法)需要在父类中做抽象方法(即规范,或者是“接口”)。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值