首页 > 后端开发 > PHP问题 > php中怎么定义类

php中怎么定义类

青灯夜游
发布: 2023-03-15 13:38:01
原创
3824 人浏览过

在php中,可以使用class关键字加类名的方式来定义一个类,并用大括号“{}”将在类体中定义类的属性和方法包裹起来,语法“[修饰类的关键字] class 类名{类的属性和方法;}”。

php中怎么定义类

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php类的定义方法

在 PHP 中,可以使用 class 关键字加类名的方式定义一个类,然后用大括号{}将在类体中定义类的属性和方法包裹起来,类的语法格式如下:

[修饰类的关键字] class 类名{
    类的属性和方法;
}
登录后复制

类名和变量名还有函数名的命名规则相似,都需要遵循 PHP 中的自定义命名规则,可以是任何非 PHP 保留字的合法标签。一个合法类名以字母或下划线开头,后面跟着若干字母,数字或下划线。如果类名由多个单词组成,习惯上将每个单词的首字母大写。另外,类名最好具有一定的意义,不要随便由几个字母组成。

修饰类的关键字是一个可选参数,可以省略。我们通常使用下面这些关键字来修饰类:

  • abstract:抽象类或方法,被修饰为抽象类之后,类将不能被实例化,但可以被继承。如果类中有至少一个方法被声明为抽象的,那么这个类也必须声明为抽象的。继承一个抽象类的时候,子类必须重新定义父类中的所有抽象方法,而且这些方法的访问控制必须和父类中一样。

  • final:使用 final 修饰的类不能被继承,而使用 final 修饰的方法不能在子类中重新定义。

注意:一个类可以包含有属于自己的常量、变量(在类中称为“成员属性”或者“属性”)以及函数(在类中称为“成员方法”或者“方法”)。

示例:

定义一个空类

Class Person{};
登录后复制

定义一个有成员属性和操作的类

Class Person{
  成员属性........
  操    作........
}
登录后复制

定义一个不能被继承的类,使用final关键字

Final class Person{
  成员属性........
  操    作........
}
登录后复制

注意:final关键字不能用来修饰成员属性 ,只能修饰类和方法(final方法后面介绍)

这里举一个带有final的class

定义一个final的类FinalClass,包含一个公共函数

final class FinalClass {
  public function ffun() {
  echo “本类为final类”;
  }
}
登录后复制

定义一个类ChildFinalClass 并继承FinalClass 类

class ChildFinalClass extends FinalClass {
  public function fchildfun() {
  echo ‘本类继承final类FinalClass ’;
  }
}
登录后复制

这样当执行以上命令的时候系统会提示

Fatal error: Class ChildFinalClass may not inherit from final class (FinalClass)
登录后复制

证明由final关键字定义的class是不可以被子类继承的

推荐学习:《PHP视频教程

以上是php中怎么定义类的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板