Final关键字

1、如果父类中的方法被声明为 final,则子类无法覆盖该方法

运行上述代码报以下错误:

Fatal error: Cannot override final method BaseClass::moreTesting()

2、如果一个类被声明为 final,则不能被继承。

运行上述代码报如下错误:

Fatal error: Class ChildClass may not inherit from final class 
(BaseClass)

3、属性不能被定义为 final,只有类和方法才能被定义为 final。

运行上述代码报如下错误:

Fatal error: Cannot declare property BaseClass::$obj final, the final 
modifier is allowed only for methods and classes

时间: 2024-10-30 16:02:05

Final关键字的相关文章

JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展

JAVA之旅(七)--final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final 我们来聊聊final这个关键字 final可以修饰类,方法和变量 final修饰的类不可以被继承 final修饰的方法不可以被覆盖 final修饰的变量是一个常量,只能被赋值一次 内部类只能访问被final修饰的局部变量 final,故名思意,就是最终的意思,由以上的五种特性,不过final的出现,也是有

浅析Java中的final关键字

原文出处: 海子 谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法.下面是本文的目录大纲: 一.final关键字的基本用法 二.深入理解final关键字 若有不正之处,请多多谅解并欢迎指正. 一.final关键字的基本用法 在Java中,final关键字可以用来修饰类.方法和变量(包括成员变量和局部变量).下面就从这三个方面来了解一下final关键字

【Java基础】final关键字总结

Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例.final经常和static一起使用来声明常量,你也会看到final是如何改善应用性能的. final关键字的含义? final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如

Java中的方法重写 与 final关键字

Java中的方法重写 与 final关键字 以下程序是否存在错误? class Base { private final void method() { System.out.println("In Base..."); } } class Sub extends Base { public void method() { System.out.println("In Sub..."); } } 答案 正确的. 使用final关键字可以声明类.成员变量和成员方法,一

转载:浅析Java中的final关键字

文章转自:http://www.cnblogs.com/dolphin0520/p/3736238.html 谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法.下面是本文的目录大纲: 一.final关键字的基本用法 二.深入理解final关键字 若有不正之处,请多多谅解并欢迎指正. 请尊重作者劳动成果,转载请标明原文链接: http://www.cn

java中的 final关键字

a.  final的变量值不能改变b.  final的方法不能被重写c.  final的类不能被继承 1.final类        final类不能被继承,因此final类的成员方法没有机会被覆盖,不能被重写,默认都是final的.在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会载被扩展,那么就设计为final类. 2.final方法(不能被重写)        如果一个类不允许其子类覆盖某个方法,则可以把这个方法声明为final方法. public class

二、Java基础之final关键字

final变量: final修饰的变量(成员变量或局部变量),即常量,只能赋值一次,不能再次修改. final成员变量要么在声明时赋值,要么在构造函数里赋值. 如果变量为引用类型,变量的引用不能修改,但是引用指向的内容是可以被修改的. final方法: final修饰的方法不能被子类重写. final类: final修饰的类不能被继承. 最典型的例子:String类.因为String是immutable的,所以不能允许其他类继承String,否则其子类会轻易的将其改为mutable.详细参考:h

java final 关键字醍醐灌顶

醍醐灌顶: final 关键字,它可以修饰数据 .方法.类. 可能有些同学傻傻分不清出,这里可以快速弄懂final; final 实例域: 可以将实例域定义为final,构建对象时必须初始化这样的域,也就是说,必须确保在每一个构造器执行之后,这个域的值被设置,并且在后面的操作中,不能够在对它进行修改,例如,可以将Employee类中的name域声明为final,因为对象构建之后,这个值不会在被修改.即没有setName方法. class  Employee { private final Str

PHP中的final关键字

final顾名思义就是"最终的,最后的". final修饰方法可以得到"最后的方法",即不能被子类重写的方法. class NbaPlayer{ final public function eat($food){ echo "food is ".$food; } } final修饰类可以得到"最后的类",即不能被继承的类. final class NbaPlayer(){ } 例子: <?php //子类的方法名和父类的

java中static,super,final关键字辨析

1:static关键字 利:1)对对象的共享数据提供单独的空间存储. 2)修饰的方法可以直接被类名调用 弊:1)生命周期长. 2)访问出现限制(只能访问静态) 它可以有静态方法,静态类,静态变量 2:super关键字 1)使用super关键字调用父类的成员变量和成员方法. 格式1:super.成员变量 格式2:super.成员方法([参数1,参数2...]) 2)使用super关键字调用父类的构造方法 格式1:super([参数1,参数2...]) 总结:this代表当前对象(可以输出或地址).