博客列表 >作业内容:oop基础:请举例实例演绎以下难点 1. 类(对象抽象化的结果)与对象 (类实例化结果) 2. 构造方法 3. 对象成员之间的内部访问 $this 4. private仅限本类中使用 protected本类中,子类中使用 5. 类的自动加载 spl_autoload_register 6. 静态成员的访问 类的引用self:: 7. 类的继承 扩展 父类方法(魔术方法,普通方法)的重写

作业内容:oop基础:请举例实例演绎以下难点 1. 类(对象抽象化的结果)与对象 (类实例化结果) 2. 构造方法 3. 对象成员之间的内部访问 $this 4. private仅限本类中使用 protected本类中,子类中使用 5. 类的自动加载 spl_autoload_register 6. 静态成员的访问 类的引用self:: 7. 类的继承 扩展 父类方法(魔术方法,普通方法)的重写

ッ小眼睛っ
ッ小眼睛っ原创
2021年08月13日 15:13:34401浏览
  1. <?php
  2. //作业内容:oop基础:请举例实例演绎以下难点
  3. // 1. 类(对象抽象化的结果)与对象 (类实例化结果)
  4. // 2. 构造方法
  5. // 3. 对象成员之间的内部访问 $this
  6. // 4. private仅限本类中使用 protected本类中,子类中使用
  7. // 5. 类的自动加载 spl_autoload_register
  8. // 6. 静态成员的访问 类的引用self::
  9. // 7. 类的继承 扩展 父类方法(魔术方法,普通方法)的重写 parent:: 调用父类成员
  10. //类的自动加载
  11. spl_autoload_register(function ($className){
  12. require $className.'.php';
  13. });
  14. //抽象类
  15. abstract class Demo{
  16. public function show()
  17. {
  18. }
  19. }
  20. //继承抽象类,实例化方法
  21. class Demo2 extends Demo{
  22. public function show()
  23. {
  24. return '显示了方法show';
  25. }
  26. }
  27. $obj = new Demo2();
  28. echo $obj->show().'<br>';
  29. class Father {
  30. public $name;
  31. public $motion;
  32. static $step = 0;
  33. private $pri;
  34. protected $pro ='父类';
  35. public function __construct($name,$motion)
  36. {
  37. $this->name = $name;
  38. $this->motion = $motion;
  39. }
  40. static function Step($step)
  41. {
  42. self::$step = $step;
  43. return '运动步数'.self::$step.'步';
  44. }
  45. public function bl($name)
  46. {
  47. $this->pri = $name;
  48. return '我是私有的不能直接被调用,你可以用成员方法来调用我'.$this->pri;
  49. }
  50. }
  51. class Son extends Father{
  52. public $name;
  53. public $motion;
  54. public function __construct($name, $motion)
  55. {
  56. parent::__construct($name, $motion);
  57. }
  58. static function Step($step)
  59. {
  60. self::$step = $step;
  61. return '当前运动步数'.self::$step.'步';
  62. }
  63. public function Pro()
  64. {
  65. return '我在子类中调用了' . $this->pro . 'pro变量<br>';
  66. }
  67. }
  68. $obj1 = new Son('姚明','跑步');
  69. echo $obj1::Step(500).'<br>';
  70. echo $obj1->bl('你好呀').'<br>';
  71. echo $obj1->Pro();
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议