博客列表 >1126_类基础1 第22课

1126_类基础1 第22课

叮叮当当
叮叮当当原创
2019年11月28日 19:54:00590浏览

1. 创建类、实例化、命名空间、类成员、类方法(手写)

  1. # self: 当前类本身,如动物
  2. # $this: 当前类实例化后的具体实例对象,如老虎
  3. # 命名空间
  4. namespace admin;
  5. class Demo{
  6. CONST SEX = '男';
  7. # 静态属性
  8. static $name = '小明';
  9. static $age = '18';
  10. # 属性
  11. public $product = '健身自行车';
  12. public $price = 3800;
  13. # 静态方法
  14. public static function getInfo1(){
  15. # self可访问静态属性,静态方法,及const常量
  16. return '姓名: ' .self::$name. '<br>年龄: ' .self::$age. '<br>性别:' .self::SEX. '<hr>';
  17. }
  18. # 实例方法
  19. public function getInfo2(){
  20. # 在类中使用伪变量: "$this" 引用当前类的实例, $this = new self();
  21. # $this可访问非静态的方法和属性
  22. return '品名: ' .$this->product .'<br>价格: ' . $this->price . '<br>';
  23. }
  24. }
  25. # 静态方法无需实例化
  26. echo Demo::getInfo1();
  27. # 类实例化
  28. $obj = new Demo();
  29. echo $obj->getInfo2();


2. 构造方法

  1. namespace admin;
  2. class Demo{
  3. # 实例属性
  4. public $product1;
  5. public $price;
  6. # 构造方法
  7. public function __construct( $product, $price ){
  8. $this->product1 = $product;
  9. $this->price = $price;
  10. }
  11. # 对象方法
  12. public function getInfo(){
  13. return '品名: ' .$this->product1 .'<br>价格: ' . $this->price . '<br>';
  14. }
  15. # 析构方法: 在对象被删除/清理时自动调用
  16. public function __destruct(){
  17. echo '<h3 style="color:red">对象已被清理</h3>';
  18. }
  19. }
  20. # 实例化
  21. $obj = new Demo('扫地机', 3900);
  22. echo $obj->getInfo();

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议