PHP中,抽象类和普通类有以下区别:
定义方式:抽象类使用关键字abstract
定义,普通类不使用。
实例化:抽象类不能直接实例化,普通类可以直接实例化。
方法:抽象类中可以包含抽象方法(即没有具体实现的方法),普通类中只能包含具体实现的方法。
继承:抽象类可以被其他类继承,通过继承抽象类来实现其抽象方法。普通类也可以被继承。
多继承:一个类可以继承多个抽象类,但只能继承一个普通类。
实现接口:抽象类可以实现接口,普通类也可以实现接口。
多态性:抽象类可以通过多态性来实现其方法的不同表现形式,普通类也可以实现多态性。
总的来说,抽象类主要用于定义一些通用的属性和方法,供其他类继承和实现。普通类则更加具体和具有实例化的能力。