> 백엔드 개발 > PHP 튜토리얼 > php的静态方法调用有关问题,求大牛解答

php的静态方法调用有关问题,求大牛解答

WBOY
풀어 주다: 2016-06-13 12:58:34
원래의
868명이 탐색했습니다.

php的静态方法调用问题,求大牛解答

<br />
<br />
<?php<br />
class Cat {<br />
}<br />
class Hypnotic_Cat extends Cat {<br />
// Constructor<br />
	function Hypnotic_Cat( ) {<br />
	}<br />
// This function must be called statically<br />
	public static function hypnotize( ) {<br />
		echo ("The cat was hypnotized.");<br />
		//return;<br />
	}<br />
}<br />
// Hypnotize all cats<br />
//Hypnotic_Cat::hypnotize( );<br />
$hypnotic_cat = new Hypnotic_Cat( );<br />
// Does nothing<br />
$hypnotic_cat->hypnotize( );<br />
?><br />
로그인 후 복사


为什么这个用->来调用还是可以出结果呢? 静态的方法不是只能用::来调用吗?
------解决方案--------------------
是谁跟你说不可以的?当然是可以的!

只是你需要注意的是:静态方法中是不能用 $this 的

------解决方案--------------------
可以这样用,不过绕弯了,一般是Hypnotic_Cat::hypnotize( );
------解决方案--------------------

引用:
是谁跟你说不可以的?当然是可以的!

只是你需要注意的是:静态方法中是不能用 $this 的

补充一下,静态方法里你就最好别出现 ->  就对了.
至于调用方法嘛,这是很灵活的.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿