在php中的面向对象编程问题?
发布网友
发布时间:2022-04-06 14:53
我来回答
共4个回答
热心网友
时间:2022-04-06 16:23
举例说明:
例1,不带参数的:
class test_class {
//析构函数,参数列中不带参数,实例化类时也不带参数。
public function __construct () {
echo "HELLO WORLD";
}
}
$obj = new test_class();
输出:HELLO WORLD
例2,带有默认参数的:
class test_class {
//析构函数,参数列中带有参数,且有默认值,实例化时可以带参数,如果不带参数,则为默认值
public function __construct ($str = "HELLO WORLD") {
echo $str;
}
}
$obj = new test_class();
输出:HELLO WORLD
$obj = new test_class("HOW DO YOU DO");
输出:HOW DO YOU DO
例3:必需有参数转入才能正确实例化的
class test_class {
//析构函数,参数列中需要参数,且没有默认值。
public function __construct ($str) {
echo $str;
}
}
$obj = new test_class();
输出:报错
$obj = new test_class("HELLLO WORLD");
输出:HELLLO WORLD追问你的意思我明白了,请问你说的这些有没有权威点的资料,我感觉自己书上写的太模糊了。
追答权威的资料都是英文的,而且也比较模糊……还不如就在百度上找的相关的资料或者实例来看看。
关于面向对象的东西也不是很难的,别把它想得太难、太复杂了。
看得出你对面向对象的概念不太理解,在下才疏学浅,但也希望能帮帮楼主了解这个概念。
比如:
汽车: 这肯定是个类,因为车还分卡车、轿车、皮卡等等,这些都是类。所有的汽车都有一些共同的属性,比如:行走装置、底盘、发动机、变速箱、差速器等等,这些属性就相当于类的成员,或者成员函数。和汽车相关的那些类
BMW M3 GTR :这就是一部很现实的车了,它所有的零件都有具体的参数和型号,是可以生产出来实物,生产出来后也就是一个对象。这就像是你把类实例化了,它就是一个实实在在的,可以解决一些问题的对象。
能把这个理解了,我想面向对象的概念也应该很容易就可以理解。
热心网友
时间:2022-04-06 17:41
我们实例化一个类的时候,实际上使用的是他们的构造方法,如果你构造方法里面设定了要带参数,你实例化的时候就需要带参数,如果你构造方法没有待参数你实例化的时候就不需要带参数
热心网友
时间:2022-04-06 19:15
跟构造函数的定义有关
热心网友
时间:2022-04-06 21:07
同楼上