> 백엔드 개발 > PHP 튜토리얼 > PHP 클래스의 일부 기능 예제에 대한 자세한 설명

PHP 클래스의 일부 기능 예제에 대한 자세한 설명

伊谢尔伦
풀어 주다: 2023-03-12 06:10:01
원래의
1159명이 탐색했습니다.

이 글은 주로 PHP 클래스의 특징을 소개하고, PHP 클래스의 정적 메소드와 정적 멤버 호출의 관련 사용법을 예제 형식으로 분석합니다. 도움이 필요한 친구가 참고할 수 있습니다

이 글의 예제는 특징을 설명합니다. PHP 클래스 중. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

객체 전달 특성이 하향으로

객체가 인스턴스 메소드를 호출하면 해당 메소드에서 다른 클래스의 메소드를 정적으로 호출하게 됩니다. 정적으로 호출됩니다. 소스 메서드(this)의 개체는 호출된 메서드

<?php
class bee{
  public $a = 1;
  public function f(){
    echo $this->a;
    echo &#39;<br>&#39;;
    @lig::f();
  }
}
class lig{
  public $a = 2;
  public function f(){
    echo $this->a;
  }
}
$obj = new bee();
$obj->f();
로그인 후 복사

에서 가져옵니다. 실행 결과는 다음과 같습니다.

1
1

static Later static 바인딩

static에는 3가지 다른 의미가 있습니다. 구문

함수 내 정적 변수

function f(){
  static $v = 1;
}
로그인 후 복사

class bee{
  static $v = 1;
  static function f(){}
}
로그인 후 복사

클래스의 정적 멤버로 메서드에서 '현재 클래스'를 동적으로 지정하는데, static은 이 메서드를 호출하는 클래스(동적)를 나타냅니다. self는 해당 코드가 있는 클래스를 참조합니다(정적).

class bee{
  static public $a = 10;
  static public function f(){
    echo get_class().&#39;:&#39;;
    echo self::$a.&#39;-&#39;;
    echo static::$a;
  }
}
class lig extends bee{
  static public $a = 20;
}
echo bee::f();
echo &#39;<br>&#39;;
echo lig::f();
로그인 후 복사

실행 결과는 다음과 같습니다.

bee:10-10
bee:10-20

객체 지향세 가지 주요 아이디어

1. 캡슐화

는 데이터를 최대한 캡슐화하는 것입니다. 다른 사람들은 가장 기본적인 캡슐화는 많은 데이터를 클래스에 캡슐화하는 것이라고 생각할 수도 있지만, 더 엄밀히 말하면 속성을 다음과 같이 만드는 것입니다. 가능한 한 비공개로 하고, 공유된 방식을 통해 외부에 운영을 제공합니다.

2. 상속

3. 다형성

보통 개체가 같은 방법을 사용하여 다른 결과를 얻는 것을 말합니다.
또한 개체마다 같은 방법을 사용하여 다른 결과를 얻는다는 의미이기도 합니다.

위 내용은 PHP 클래스의 일부 기능 예제에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿