>백엔드 개발 >PHP 튜토리얼 >PHP의 객체지향 실습 - 기본 실습 사례

PHP의 객체지향 실습 - 기본 실습 사례

易达
易达원래의
2020-05-21 17:44:442073검색

PHP의 객체 지향 연습 - 기본 연습

(1), 기본 연습

1. 클래스의 개념

PHP의 객체지향 실습 - 기본 실습 사례

1. 공통점:

모두 동일합니다. 속성

모두 동일한 메소드를 가집니다

2. 차이점:

구체적인 값이 다릅니다

3. 요약: 모두 동일한 클래스의 객체입니다

클래스 얘기를 해보자면 이제 클래스의 개념에 대해 이야기해보겠습니다

1) 클래스 정의

- 사물은 모여서 사람은 그룹에 속하고, 비슷한 특성을 가진 객체는 클래스로 분류된다고 합니다

그래서 객체를 볼 때, 속성과 메소드를 비교하세요. 속성과 메소드가 매우 유사하면 하나의 카테고리로 분류할 수 있습니다

- 클래스는 이러한 유사한 객체가 동일한 속성과 메소드를 갖는다고 정의합니다

예: NBA 선수는 클래스 정의, NBA 선수라면 나이, 이름, 키, 몸무게, 팀, 선수 번호가 있어야 한다고 규정합니다.

그러면 그들은 또한 동일한 기술을 갖게 됩니다:

PHP의 객체지향 실습 - 기본 실습 사례

하지만 문제가 있습니다 예 , 이 클래스에 정의된 특정 높이가 있는지, 특정 이름이 있는지, 특정 가중치가 있는지, 그중 하나도 없는데 이 속성을 모두 쓰면 특정 객체가 되는 걸까요

이것은 클래스 간의 관계입니다. 구체적으로 클래스는 유사한 객체에 대한 설명입니다. 클래스는 이러한 모든 유사한 객체의 청사진 또는 프로토타입입니다. 이 클래스는 어떻게 탄생했나요? 클래스의 속성 값만 설정하면 됩니다

클래스의 객체는 클래스의

Instance

입니다. 이 작업을 클래스의 인스턴스화라고도 합니다<strong>实例(Instance)</strong>

예를 들어 James, Jordan, Kobe는 모두 Player 클래스의 NBA 인스턴스이며 이를 인스턴스화하는 과정을 클래스 인스턴스화라고 합니다. 클래스는 객체가 분할되는 방식만 정의하며, 객체의 경우 특정 값, 모든 속성 값은 자세히 작성해야 합니다

개념 추가: 클래스 객체와 메소드를 클래스 멤버로 통칭합니다

2. 인스턴스화의 개념

1) class 정의

는 클래스를 통해 특정 객체를 생성하는 것입니다. 이 프로세스는 클래스의 인스턴스화이며, 이는 빈 선반을 채우는 것과 같습니다

예: 예를 들어 NBA 플레이어 클래스를 통해 James를 생성했습니다. , Kobe 및 Jordan 이 NBA 플레이어 클래스를 세 번 인스턴스화하세요.

요약: 클래스는 하나이지만 여러 번 인스턴스화하여 여러 특정 개체를 얻을 수 있습니다.PHP의 객체지향 실습 - 기본 실습 사례

팁: 구체적으로 구현하는 방법은 다음과 같습니다. 나중에 코드에서 설명할 것입니다. 구체적인 데모를 만들어 보세요

2) 클래스의 인스턴스화

2) 예: Jordan을 예로 들어보겠습니다

왼쪽이 클래스이고 데이터가 없으며 오른쪽이 조던, 그래서 인스턴스화하는 방법, 즉 이름, 키, 몸무게, 팀, 선수 번호 등 이 값들을 구체적으로 입력하면 조던 객체가 인스턴스화됩니다PHP의 객체지향 실습 - 기본 실습 사례

Tip: 인스턴스화는 다음과 같이 할 수 있습니다. 클래스를 실제 예시로 만드는 것으로 이해

3. 구체적인 사례

1) 사례 학습 목표

1. 클래스를 정의하는 방법

2. 클래스의 속성과 메소드

2) 자세한 내용은 다음 코드를 참조하세요

<?php
/***
 * 案例目标:
 *  1.类的定义
 *  2.类的实例化
 *  3.属性的赋值
 *  4.方法的调用
 *  
 */
/***定义一个类,类的名字叫NbaPlayer(中文=NBA球员)
 * 提示:
 *  1.定义类的过程:我们首先以class开始,然后写上类 名称:NbaPlayer,最后要写上一对{}
 *  2.类的名字通常首字母要大写
 *  3
 * 
***/
class NbaPlayer{
    //定义属性
    public $name = "";
    public $height = "";
    public $weight = "";
    public $team = "";
    public $playerName = "";
    //定义方法
    //定义跑的方法
    //提示:
      //方法定义的过程:
        //1.写上方法的类型,public,表示公共的方法,可以被外部直接调用
        //2.写上function
        //3.定义方法的名称,然后写上一对(),最后{}结尾     
    //总结:
        //方法定义和之前js中函数的定义是一样的,只是类中的方法多了一个public
    public function run(){
        //里面的代码我们称之为业务逻辑
        echo "跑步<br/>";
    }
    //定义跳跃方法
    public function jump(){
        echo "跳跃<br/>";
    }
    //定义运球方法
    public function dribble(){
        echo "运球<br/>";
    }
    //定义投篮的方法
    public function shoot(){
        echo "投篮<br/>";
    }
    //定义扣篮方法
    public function dunk(){
        echo "扣篮<br/>";
    }
    //定义传球
    public function pass(){
        echo "传球<br/>";
    }
} 
//类到对象的实例化
/*总结:
    1、类的实例化过程= 通过new 类名() 即可完成一个类的实例化过程
*/
//1.创建乔丹
$jordan = new NbaPlayer();//类的实例化
//类赋值
$jordan->name = "乔丹";
$jordan->height = "1.98米";
$jordan->weight = "98公斤";
$jordan->team = "公牛";
$jordan->playerName = "23";
//输出对象值
print_r("乔丹名称:".$jordan->name."<br/>");
print_r("乔丹身高:".$jordan->height."<br/>");
//总结:通过->可以调用对象里的属性
echo "<br/>";
//输出对象方法
$jordan->dribble();
$jordan->pass();
//总结:通过->符号可以调用对象的方法
?>

위 내용은 PHP의 객체지향 실습 - 기본 실습 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.