创建对象实例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23假如没有太阳
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
元旦晚会主题45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
/**
* php创建对象的六种方式
*/
class
person{
private
$name
=
'bruce'
;
public
function
getname(){
return
$this
->name;
}
public
static
function
getobjbylf(){
return
new
lf();
}
//动态延迟绑定,能识别调用者
public
static
function
getobjcbystatic(){
return
new
static
();
}
}
//person子类 teacher
class
teacher
extends
person{
具有的近义词public
static
function
getobjbyparent(){
return
neno性no爱w
parent();
}
}
//1、new 类名();创建对象
$obj1
=
new
person();
//等价于写法 $obj1 = new person;
echo
'类名:'
.get_class(
$obj1
).
'<br>'
;
echo
$obj1
->getname().
'<hr>'
;
//2、将类名字符串赋值给一个变量,通过变量创建
$clsname
=
'person'
;
$obj2
=
new
$clsname
();
echo
'类名:'
.get_class(
$obj2
).
'<br>'
;
echo
$obj2
->getname().
'<hr>'
;
//3、通过对象实例创建对象
$obj3
=
new
$obj2
();
echo
'类名:'
.get_class(
$obj3
).
'<br>'
;
echo
$obj3
->getname().
'<hr>'
;
//4、通过 new lf()
//$obj4 = (new $obj3())->getobjbylf();
$obj4
= person::getobjbylf();
echo
'类名:'
.get_class(
$obj4
).
'<br>'
;
echo
$obj4
->getname().
'<hr>'
;
//5、通过 new parent()
$obj5
= teacher::getobjbyparent();
echo
'类名:'
.get_class(
$obj5
).
'<br>'
;
echo
$obj5
->getname().
'<hr>'
;
//6、通过 new static();
$obj6
= person::getobjcbystatic();
echo
'类名:'
.get_class(
$obj6
).
'<br>'
;
//类名:person
echo
$obj6
->getname().
'<hr>'
;
//bruce
//当用子类去调用时候,发现static自动识别当前调用者(静态延迟绑定),返回当前调用者对象
$obj7
= teacher::getobjcbystatic();
echo
'类名:'
.get_class(
$obj7
).
'<br>'
;
//类名:teacher
echo
$obj7
->getname().
'<hr>'
;
//bruce
$obj8
= person::getobjbylf();
echo
'类名:'
.get_class(
$obj8
).
'&高中记叙文lt;br>'
;
//类名:person
echo
$obj8
->getname().
'<hr>'
;
//new lf()在子类中调用依旧返回原来父类的绑定
$obj9
= teacher::getobjbylf();
echo
'类名:'
.get_class(
$obj9
).
'<br>'
;
//类名:person
echo
$obj9
->getname().
'<hr>'
;
运行结果:
本文发布于:2023-04-07 20:35:24,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/885a9366ef6cc842d132c9d729258143.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:PHP创建对象的6种方式.doc
本文 PDF 下载地址:PHP创建对象的6种方式.pdf
留言与评论(共有 0 条评论) |