php final这个关键词代表什么,php面向对象之final关键字用法及实例
這節課我們來說一下關于final關鍵字的概念和用法。
什么是final關鍵字?
final中文翻譯為“最終的”,“最后的”。在聲明一個類之前用final關鍵詞修飾,說明這個函數將不能在任何子類中被重載,繼承,也就是說,被final修飾的類將不能再有子類。
之前的課程我們說了4種關鍵字,public、private、protected、static,分別是公共、私有、保護、靜態。用法及示例在前面的課程都有,想學習的同學可以參見前面的課程:
php面向對象之靜態方法使用
php面向對象之數據隱藏
下面我們用實例來對比下final和其他關鍵字有什么不一樣,再來分析下final的用法:
final用法實例詳解:<?php
header("content-type:text/html;charset=utf-8");
class A{ //聲明類
public $num = "23";
final function operation(){ //創建方法,用final關鍵字
echo '上面變量$num數字是 ' . $this->num ;
}
}
class B extends A{ //創建子類B繼承A類
public $num = "50";
function operation()
{
echo '這個變量$num數字是 ' . $this->num ;
}
}
$Num = new B(); //實例化子類
$Num ->operation(); //調用子類中的方法
我們先創建了一個A類,在A類中添加方法,但是在方法前的關鍵字我們用了final,也就是說,A類中的方法operation()將不能再被繼承、重載。接著又創建B類去繼承A類,包括不能被繼承的方法operation(),運行的結果就是只有報錯。
上述示例中禁止了在B類中重載A類中的operation()方法。這樣做只會報錯。
如果final寫在類之前,那么講禁止整個類被繼承。比如上面的示例:final class A{
}
這樣寫,整個A類都將不能被繼承、重載。
總結
以上是生活随笔為你收集整理的php final这个关键词代表什么,php面向对象之final关键字用法及实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php读取远程二进制文件,php 读取二
- 下一篇: linux shell 字符串 数组,b