PHP变量,类和继承了解基础知识

我正在开发一个PHP项目,我需要一些基础知识。 我有一个车辆类。 在车辆级别中有一个名为fuel_capacity的变量。 正如您所期望的那样,车辆之间的燃油容量会发生变化。 例如,汽车和卡车之间的fuel_capacity会发生变化。 我有一个汽车类和一个卡车类,延长车辆类。

在建造汽车时,我想给$ fuel_capacity分配一个值。 当我这样做时,除非我公布$ fuel_capacity,否则我无法从车辆内的功能访问$ fuel_capacity。 问题是如果我在Car类中宣布$ fuel_capacity public,那么我担心它将与Truck类的$ fuel_capacity冲突。 它是否正确? 如果是这样,我该如何与父母分享$ fuel_capacity?

另外我想在我的Car类中使用构造函数类,然后覆盖我的Vehicle类构造函数。 无论如何,我可以调用例如在Car类中赋值$ fuel_capacity的值,然后在Vehicle类的构造函数中使用该值?

最后是否有一种方法可以为从另一个类扩展的类设置接口?

我已经看过很多页面,包括在PHP中使用普通函数和类方法有什么区别,了解PHP中的继承,了解PHP继承,以及在PHP中使用普通函数和类方法有什么区别? 这些都是很好的介绍,但他们没有解决这些问题。 谢谢 :-)


您需要真正了解OOP如何工作以及如何在PHP中实现它。 http://php.net/oop应该能够提供帮助。

这是一种方法。 您当然可以在构造函数中设置燃料容量。 我建议Vehicle是一个abstract类,因为你不希望有人创建Vehicle对象。

如果你继承了,当然你可以从Car/Trunk类访问变量,因为它声明了protected。

abstract class Vehicle {
    public function setFuelCapacity($capacity) {
        $this->fuel_capacity = $capacity;
    }

    protected $fuel_capacity;
}

class Car extends Vehicle {
}

class Truck extends Vehicle {
}

希望有所帮助。

链接地址: http://www.djcxy.com/p/57937.html

上一篇: PHP Variables, classes and inheritance understanding the basics

下一篇: PHP DateTime::createFromFormat not working