ホームページ  >  記事  >  バックエンド開発  >  PHP オブジェクト指向プログラミングにおけるクラス属性とメソッドの解析

PHP オブジェクト指向プログラミングにおけるクラス属性とメソッドの解析

王林
王林オリジナル
2023-08-12 13:06:161629ブラウズ

PHP オブジェクト指向プログラミングにおけるクラス属性とメソッドの解析

PHP オブジェクト指向プログラミングにおけるクラス属性とメソッドの分析

PHP は、Web 開発で広く使用されているスクリプト言語であり、オブジェクト指向プログラミング (OOP) をサポートしています。 )の特徴。 PHP では、クラスはオブジェクトの作成に使用されるブループリントまたはテンプレートであり、プロパティとメソッドはクラスの中核部分です。この記事では、PHP オブジェクト指向プログラミングにおけるクラスの属性とメソッドを詳しく分析し、コード例を通じて理解を深めます。

1. クラス属性

クラス属性は、クラスの一意のデータを記述するために使用される変数を指します。オブジェクトの状態と特性を保存できます。 PHP では、クラス属性には public、protected、private の 3 つのアクセス修飾子があります。

  1. パブリック プロパティ (パブリック): パブリック プロパティには、クラスの内部および外部から直接アクセスできます。例は次のとおりです。
class Car {
    public $color = "red";
    public $brand = "Toyota";
}

$myCar = new Car();
echo $myCar->color;  // 输出:red
echo $myCar->brand;  // 输出:Toyota
  1. 保護されたプロパティ (protected): 保護されたプロパティには、クラスとそのサブクラス内でのみアクセスできます。例は次のとおりです。
class Car {
    protected $color = "red";
    protected $brand = "Toyota";
}

class SportsCar extends Car {
    public function getColor() {
        return $this->color;
    }
}

$sportsCar = new SportsCar();
echo $sportsCar->getColor();  // 输出:red
echo $sportsCar->brand;       // 错误:不能直接访问受保护属性
  1. プライベート プロパティ (プライベート): プライベート プロパティはクラス内でのみアクセスでき、クラス外またはサブクラスからはアクセスできません。例は次のとおりです。
class Car {
    private $color = "red";
    private $brand = "Toyota";
    
    public function getColor() {
        return $this->color;
    }
}

$myCar = new Car();
echo $myCar->getColor();  // 输出:red
echo $myCar->brand;       // 错误:不能直接访问私有属性

2. クラス メソッド

クラス メソッドは、クラスで定義された関数を参照し、クラスのプロパティを操作したり、特定のタスクを完了したりするために使用されます。プロパティと同様に、クラス メソッドにも public、protected、private の 3 つのアクセス修飾子があります。

  1. パブリック メソッド (パブリック): パブリック メソッドはクラス内外で直接呼び出すことができます。例は次のとおりです。
class Circle {
    public $radius;
    
    public function getArea() {
        return 3.14 * $this->radius * $this->radius;
    }
}

$myCircle = new Circle();
$myCircle->radius = 5;
echo $myCircle->getArea();  // 输出:78.5
  1. 保護されたメソッド (保護された): 保護されたメソッドは、クラスとそのサブクラス内でのみ呼び出すことができます。例は次のとおりです。
class Shape {
    protected function calculateArea() {
        // 计算面积的具体实现
    }
}

class Circle extends Shape {
    public function getArea() {
        return $this->calculateArea();
    }
}

$myCircle = new Circle();
echo $myCircle->calculateArea();  // 错误:不能直接调用受保护方法
echo $myCircle->getArea();        // 正确:通过公共方法调用受保护方法
  1. プライベート メソッド (プライベート): プライベート メソッドはクラス内でのみ呼び出すことができ、クラス外またはサブクラス内で呼び出すことはできません。例は次のとおりです:
class MathUtil {
    private function add($a, $b) {
        return $a + $b;
    }
    
    public function calculate($a, $b) {
        return $this->add($a, $b);
    }
}

$mathUtil = new MathUtil();
echo $mathUtil->calculate(2, 3);  // 输出:5
echo $mathUtil->add(2, 3);        // 错误:不能直接调用私有方法

概要:

クラスの属性とメソッドは、PHP のオブジェクト指向プログラミングの重要な部分です。クラス プロパティを定義することによって、オブジェクトの状態と特性を保存でき、クラス メソッドを定義することによって、これらのプロパティを操作したり、特定のタスクを完了したりできます。クラスのプロパティとメソッドのアクセス修飾子を理解すると、プロパティとメソッドのアクセス許可を柔軟に制御することができます。この記事の分析とサンプル コードを通じて、読者が PHP オブジェクト指向プログラミングのクラス属性とメソッドについてより深く理解できることを願っています。

以上がPHP オブジェクト指向プログラミングにおけるクラス属性とメソッドの解析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。