php中的面向对象。。类里边的成员属性到底是干嘛的?。。类里边的方法最终只是为了给属性赋值吗????各路大神告诉我啊。。求解答。。感激不尽。。
这个面向对象每个语言都差不多吧,类里面的方法可以有好多种,不一定只是赋值。成员不干嘛啊,它就是属于这个类。。。(我的理解)
比如Person这个类,它有name,age,gendar等成员属性,它还有say()这个方法,方法就是它要执行的动作。
<?php
class Person
{
private $name;
private $age;
private $gendar;
// 这里是一个构造方法,需要传入三个参数,用来初始化name,age,gendar
public function __construct($name, $gendar, $age)
{
$this->name = $name;
$this->gendar = $gendar;
$this->age = $age;
}
// say方法的作用是用来输出这个Person的信息
public function say()
{
echo "My name is " . $this->name . ", a " . $this->gendar . ", age " . $this->age;
}
}
?>
那么,现在new一个Person
<?php
$jack = new Person('Jack', 'Male', '20');
$jack->say();
?>
那么这将会得到下面结果:
My name is Jack, a Male, age 20
面向对象是跟语言没有很大关系,语言只是一种编程工具,面向对象是编程思想的一种。
如果问对面向对象的理解是什么,或许很多人都会有不同的见解,需要时间和代码去堆出来,或许灵机一动就明白了。
我认为认为吧,面向对象就是,你在逻辑顶级的时候,你往一个对象里面丢东西,你不需要管他怎么搞,反正他给你丢一个约定好的东西给你。
这是我对面向对象的初步认识。