final关键字和const关键字

版权声明:版权归作者所有,转发请标明 https://blog.csdn.net/weixin_40087851/article/details/84316438

问题

  • 某些类不希望被其他类来继承。
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<body>
<?php
	final class A{}
	class B extends A{}
?>
</body>
</html>

在这里插入图片描述

  • 某些方法不希望被别人改写。
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<body>
<?php
	class A{
		final function getResult(){}
	}
	class B extends A{
		function getResult(){}
	}
?>
</body>
</html>

在这里插入图片描述

  • final不能修饰成员属性。

问题

  • 当某个成员属性不希望被修改。
  • 基本语法:无"$"符号,一般大写
const 常量名=值;
  • 访问
类名::常量名
接口::常量名
  • 一个常量是属于一个类的,而非某个对象。
  • 简单实例
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<body>
<?php
	class A{
		const result=10;
	}
	interface B{
		const sum=20;
	}
	class c extends A implements B{
		const cc=30;
		function getNum(){
			echo A::result." ".self::cc." ".B::sum."<br/>";
		}
	}
	$c=new C();
	$c->getNum();
?>
</body>
</html>
展开阅读全文

没有更多推荐了,返回首页