PHP 객체지향 프로그래밍에 대한 자세한 설명: 클래스와 객체

WBOY
풀어 주다: 2016-08-08 09:22:34
원래의
953명이 탐색했습니다.

PHP 객체지향 프로그래밍에 대한 자세한 설명: 클래스와 객체

OOP 관점에서는 언어를 구분하면 안 됩니다. C++, Java, .net 또는 기타 객체 지향 언어이든 OO의 진정한 의미를 이해하는 한 언어를 초월하여 생각을 쉽게 뛰어넘을 수 있습니다. Java, .net, PHP 중 누가 더 강한지에 대한 논쟁은 더 이상 없습니다.
PHP5 객체 지향 프로그래밍(OOP)에 대한 이 소개가 초보자에게 도움이 되고 더 많은 PHP 사용자가 OO 프로그래밍으로 전환할 수 있기를 바랍니다.
PHP4에 비해 PHP5는 객체 지향 측면에서 많은 변화를 겪었습니다. PHP5 환경에서만 객체지향을 소개하겠습니다. 그리고 우리도 PHP5의 발전에 맞춰 변화해야 합니다. 귀하의 환경에서 코드 결과가 일관되지 않으면 귀하의 환경이 PHP5인지 확인하십시오.
독자가 객체지향 지식이 전혀 없다고 가정합니다. OOP에 대해 처음 들어도 이 글은 이해할 수 있습니다. 하지만 PHP에 대한 지식이 있어야 한다고 생각합니다.
나중에 몇 가지 예를 사용하여 PHP5의 OO 기반을 점진적으로 분석하겠습니다.
객체 지향은 코드 확장성과 코드 유지 관리라는 두 가지 문제만 해결합니다.
PHP는 점점 더 Java와 비슷해지고 있다고 말씀드리고 싶습니다.
편집 참고자료: http://www.lai18.com/content/425094.html

모든 것이 객체입니다: 모든 것이 객체입니다.

객체 지향 프로그래밍(OOP) 사고는 컴퓨터 언어로 사물을 설명하는 것을 현실 세계의 사물의 원래 모습과 최대한 일치시키려고 노력합니다. 객체지향 언어는 우리 삶과 밀접하게 연관되어 있으며 실제로 객체지향 언어를 배우는 것은 매우 간단합니다. 응용 프로그램은 우리의 삶의 논리와 더 일치합니다.
클래스는 객체(Object)를 기술하는 데 사용됩니다.
클래스는 각 객체가 포함해야 하는 데이터를 기술하고, 클래스는 각 객체의 동작 특성을 기술합니다.
클래스/객체: 클래스와 객체는 객체지향 방법의 핵심 개념입니다.
클래스는 사물의 유형에 대한 설명으로 추상적이고 개념적인 정의입니다.
객체는 실제로 존재하는 사물 유형의 각 개체이므로 인스턴스라고도 합니다. 컴퓨터에서는 이 객체를 저장하기 위해 메모리에 실제 메모리 영역이 생성되는 것으로 이해할 수 있습니다.
객체를 생성하는 과정을 객체 생성, 인스턴스화라고도 합니다.

PHP5의 클래스와 객체

먼저 기본 클래스를 만들어 보겠습니다.
PHP에서는 class라는 키워드를 사용하여 클래스를 정의합니다. 클래스 이름은 일반적으로 첫 번째 문자를 대문자로 사용하고 읽기 쉽도록 각 단어의 첫 번째 문자를 대문자로 표시합니다.


이렇게 해서 첫 번째 PHP 수업을 하게 되었습니다.
이 클래스를 계속 사용하고, new 키워드를 사용하여 객체를 생성하고, echo를 사용하여 $p를 인쇄합니다.
$p 변수를 정의하고, new 키워드를 사용하여 Person 객체를 생성합니다.
변수 $p를 인쇄하면 이것이 개체임을 나타내는 출력 개체 ID #1이 표시됩니다.
$p = new Person();은 $p = new Person;으로 작성할 수도 있지만 후자의 방법은 사용하지 않는 것이 좋습니다.

PHP5의 속성

속성: 개체를 설명하는 데 사용되는 데이터 요소를 개체의 속성(데이터/상태라고도 함)이라고 합니다.
PHP5에서 속성은 변수를 참조합니다. 수업시간에 선언했습니다. 변수를 선언할 때 변수에 대한 접근 권한을 정의하기 위해 public private protected 중 하나로 수정되어야 합니다.
공개: 수업 안팎에서 자유롭게 읽고 수정하실 수 있습니다.
비공개: 현재 클래스 내에서만 읽고 수정할 수 있습니다.
보호됨: 이 클래스와 해당 하위 클래스에서 읽고 수정할 수 있습니다.
속성 사용: 변수의 -> 기호를 참조하여 변수가 가리키는 객체의 속성을 호출합니다.
$this-> 표기법을 통해 메소드 내에서 동일한 객체의 속성을 호출합니다.

"; // 输出对象 echo "他的名字是 ".$p->name; // 输出对象$p的属性 $name; echo "
"; echo '他的年龄是 '$p->age; //输出age属性. ?>


프로그램 출력 결과는 다음과 같습니다.

他的名字是 Gonn 他的年龄是 24


Person 클래스 $name 및 $age라는 두 개의 속성이 있습니다. 인스턴스화 후 $p->name 및 $p->age를 사용하여 속성의 내용을 인쇄합니다.
물론 속성을 정의할 때 초기값을 설정할 수 없습니다. 이 경우 결과가 인쇄되지 않습니다.
객체의 속성을 변경하고 코드의 8행과 9행, 출력 결과의 변경 사항에 주의하세요. 출력 속성 값이 변경된 것을 볼 수 있습니다.

name = 'Tom'; //变更姓名为 Tom $p->age = 25 ; // 变更年龄为 25 岁. echo "他的名字是 ".$p->name; // 输出对象$p的属性 $name; echo "
"; echo '他的年龄是 '.$p->age; //输出age属性. ?>


Person 개체를 만들고 이 개체의 속성을 변경합니다. 이름을 지정하고 이름을 확인하세요. 당신은 기계에 있는 Person 객체의 신입니다. 정의한 규칙에 따라 메모리에 있는 이 실제 Person 객체가 생성되고 변경될 수 있는 속성이 있습니다.
이제 우리는 컴퓨터 세계의 신들이 되어 세상을 창조할 준비가 되었습니다.
개인적으로 수정된 속성은 현재 개체 외부에서 액세스할 수 없습니다. 개인 속성은 데이터를 숨기도록 설정됩니다.
숨기기: 외부 프로그램에서 개체의 속성이나 메서드에 직접 접근하지 못하도록 개체를 보호하는 메커니즘을 말합니다.

name; // 输出对象$p的属性 $name; ?>


이 프로그램을 실행하면 다음이 출력됩니다.

Fatal error: Cannot access private property Person::$name in E:\PHPProjects\test.php on line 9


개인 속성 외부에서는 접근할 수 없습니다. 이에 대한 이점은 나중에 소개하겠습니다.

확장 독서

이 글의 주제 목록은 다음과 같습니다.
PHP 객체지향 프로그래밍에 대한 자세한 설명: 클래스와 객체
PHP 객체지향 프로그래밍에 대한 자세한 설명: 클래스 속성
PHP 객체지향 프로그래밍에 대한 자세한 설명 PHP 객체지향 프로그래밍: 클래스의 메소드
PHP PHP 객체지향 프로그래밍에 대한 자세한 설명: 객체 비교
PHP 객체지향 프로그래밍에 대한 자세한 설명: 생성자
객체지향 프로그래밍에 대한 자세한 설명 PHP에서: 클래스 상속
PHP에서 객체지향 프로그래밍에 대한 자세한 설명: 접근 제어
PHP에서 객체지향 프로그래밍에 대한 자세한 설명: 메소드 적용 범위
PHP 객체지향 프로그래밍에 대한 자세한 설명: 이 키워드
PHP 객체지향 프로그래밍 상세 설명: 부모:: 키워드
PHP 객체지향 프로그래밍 상세 설명: 오버로딩에 대해 다시 이야기해보자
PHP 객체지향 프로그래밍 상세 설명: 사용자 데이터 가져오기
PHP 객체지향 프로그래밍에 대한 자세한 설명: 사용자 권한 관리 클래스
PHP 객체지향 프로그래밍에 대한 자세한 설명: 정적 변수 및 메서드
PHP 객체지향 프로그래밍에 대한 자세한 설명: 싱글턴 모드
PHP 객체지향 프로그래밍에 대한 자세한 설명 PHP 객체지향 프로그래밍: 최종 클래스 및 메소드
PHP 객체지향 프로그래밍에 대한 자세한 설명: PHP의 상수
PHP 객체지향 프로그래밍에 대한 자세한 설명: 추상 클래스
PHP 객체지향 프로그래밍에 대한 자세한 설명 : 추상 메소드
PHP 객체지향 프로그래밍에 대한 자세한 설명: 추상화 클래스 상속 추상 클래스
PHP 객체지향 프로그래밍에 대한 자세한 설명: 정적 추상 메소드
PHP 객체지향 프로그래밍에 대한 자세한 설명: 템플릿 패턴
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스와 추상 메소드
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스 구현
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스 상속
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스 구현 PHP 객체지향 프로그래밍: 유형 힌트
PHP 객체지향 프로그래밍에 대한 자세한 설명: PHP의 다형성
PHP 객체지향 프로그래밍에 대한 자세한 설명: instanceof 연산자
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스 및 다중 상속 조합 시뮬레이션
PHP 객체지향 프로그래밍에 대한 자세한 설명: 인터페이스 예제
PHP 객체지향 프로그래밍에 대한 자세한 설명: 간단한 팩토리 패턴

위에서는 PHP 객체지향 프로그래밍에 대한 자세한 설명을 소개했습니다. 즉, 내용의 측면을 포함하여 클래스와 객체가 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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