Adakah memanggil kaedah statik secara langsung menggunakan nama kelas dalam PHP mencetuskan pembina kelas atau kelas induk?
淡淡烟草味
淡淡烟草味 2017-07-07 10:34:10
0
3
1445

Seperti tajuknya, apabila PHP memanggil kaedah statik secara terus menggunakan nama kelas, terdapat dua masalah:

1 Adakah pembina kelas semasa akan dipanggil?

2 Adakah pembina kelas induk kelas semasa akan dipanggil?

淡淡烟草味
淡淡烟草味

membalas semua(3)
学霸

Anda harus mengujinya sendiri, pelayar adalah guru terbaik
Contoh 1:
<?php
kelas A{

function __construct(){echo"A::构造函数";}
static function myFun(){echo "你好,很高兴为你答题!";}

}
A::myFun();
?>
Contoh 2:
<?php
kelas A{

function __construct(){echo"A::构造函数";}

}
kelas B memanjangkan A{

static function myFun(){echo "你好,很高兴为你答题!";}

}
B::myFun();
?>

给我你的怀抱

1. Tidak
2. Tidak

Pembina hanya dipanggil semasa instantiasi kaedah statik tidak menjana kejadian dan tidak akan memanggil pembina

伊谢尔伦

Tidak, kaedah pembina hanya akan dipanggil apabila kelas dijadikan instantiated Kaedah statik disimpan dalam kawasan kod statik dan dimuatkan semasa kelas dimuatkan.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan