php面向对象
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php class YunSuan { public $a=10; public $b=5; //构造方法 function __construct($a1,$b1) { $this->a = $a1; $this->b = $b1; } //析构方法,在对象内存释放的时候执行 function __destruct() { echo "该对象释放了"; } private function Jia() { return $this->a+$this->b; } function Jian() { return $this->a-$this->b; } function Cheng() { return $this->a*$this->b; } function Chu() { return $this->a/$this->b; } } //造对象 实例化对象 $y = new YunSuan(10,5); var_dump($y); echo $y->Chu(); //访问修饰符 //public 公有的,任何地方都可以访问 //protected 受保护的,只能在该类或该类的子类中访问 //private 私有的,只能在该类中访问 //__开头的方法在面向对象里面成为魔术方法 //构造函数 //1.写法特殊:方法名特殊 //2.执行时间特殊:造对象的时候就执行 //对对象里面的成员进行初始化 ?> </body> </html>
默认都是公有的 public 在任何地方都可以访问,如果改成外界不能访问的,就可以加访问修饰符protected,在花括号里面可以访问的,即该类中。
访问修饰符就是为了在做类时,更加的安全,外界不能随便访问到
原来定义的var可以用public代替
即使不写构造方法,它在每个类中也依然存在,只不过看不到而已,如果传参数过去的话,就得写构造方法,不然就会出错
__construct 构造方法,在每个类中都可以这样写