`
bal1212
  • 浏览: 76886 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

final修饰符的作用

阅读更多

一般来说,当用final修饰符修饰父类时的方法时,子类不能重写此方法;当用final修饰符修饰类是,此类讲不能被继承。

提示:ActionScript 3.0中的final修饰符与Jave中的不同,在Java中,final修饰符经常用来定义变量,即字符串、数字等常量一般都会用 public static final 修饰,而在ActionScript 3.0中,常量一般由public static 修饰,而也就是说final修饰符不能修饰变量或常量,只能修饰方法和类。

使用final修饰方法一般出于这样的目的:当类中某个方法所提供的功能已经能满足需求,即无需要再进行修改或扩展,之类可以继承这样的方法但不能重新或覆盖次方法。

class Person{

         public function Person{

         }

         public final function finalFun ():void{

                   trace("this is a final function");

         }

}

class Teacher extends Person{

          public function Teacher{

          }

         //错误,final方法不能被重写

         pubic overrid function finalFun():void{

         }

}

因此,用final修饰的方法可以防止该方法在子类中被重写。

同样,如果某个类设计得非常完美,并不需要修改或扩展时,此类就可以用final 修饰。例如,顶级类中的Math类用public final 修饰,flash.display包中的Graphics类也用public final 修饰。

Math类的部分伪代码如下:

package{

       public final class Math{

                 public static const PI:Number= 3.141592653589793

                 public static function cos(angleRadians:Number):Number{

                 }

        }

}

看到这里,读者可能有些意外,Math类的cos()方法为什么不用fina修饰呢?这是因为Math类已经是final修饰的了,Math类所有方法自然而然地也就是final了,换句话说,再用final修饰cos()方法纯属画蛇添足。

如果用户不小心继承了final修饰的类,Flash讲提示“基类是fina类”的错误。

package{

       public class Test extends Mah{

       }

}

因此,ongoingfinal修饰类能阻止此类继承。

用final修饰类后,此类就不能被继承,但并不等于不能扩展类的功能。因为类和类的关系有很多,继承只是其中一种关系,不能使用继承可以用聚合等其他的关系。

分享到:
评论

相关推荐

    Java修饰符使用整理(含实例)

    非访问修饰符包括 final、static 和 abstract 三种,用于控制类、成员变量和方法的继承关系和行为。 一、访问修饰符 访问修饰符是 Java 中最基本的修饰符,用于控制类、成员变量和方法的访问权限。访问修饰符有四...

    Java访问修饰符

    final 访问修饰符表示使用此修饰符的类不能够被继承。final 变量的值只能被分配一次,不能更改。 abstract 访问修饰符 abstract 访问修饰符表示抽象类,抽象类不能被实例化。抽象类中可以定义抽象方法,抽象方法是...

    final修饰符与类型转化

    在Java编程中,`final`修饰符和类型转化是两个重要的概念,它们分别涉及类的继承限制和对象的类型转换。 1. `final`修饰符: - `final`类:当一个类被声明为`final`时,它无法被其他类继承。这通常用于防止他人...

    java面向对象之final修饰符.docx

    【Java面向对象之final修饰符】 Java中的final关键字在面向对象编程中扮演着重要的角色,它主要用于修饰类、变量和方法,确保它们在程序运行过程中不可改变或不可重写。以下是对final修饰符的详细解释: 一、final...

    Java软件开发实战 Java基础与案例开发详解 6-6 final修饰符 共7页.pdf

    ### Java软件开发实战:Java基础与案例开发详解之final修饰符 #### 1. final修饰符概述 在Java中,`final`关键字是一种访问修饰符,它可以用来限制类、方法和变量的行为。当一个类、方法或变量被声明为`final`时,...

    java修饰符介绍

    以上就是Java中主要的修饰符及其作用,理解并熟练运用这些修饰符是编写高质量、安全、可维护的Java代码的关键。在实际编程中,合理选择和组合这些修饰符可以帮助我们更好地控制代码的结构和行为。

    java常用的修饰符

    - **final**: 最终类修饰符,防止类被继承。通常用于创建不可变类或工具类。 - **default**: 缺省访问控制符,没有明确指定访问级别的类或接口,只允许同一包内的访问。 2. **域的控制修饰符** - **public**: ...

    java中final修饰符的使用方法

    在Java编程语言中,`final`关键字是一种非常重要的修饰符,它可以用来限制变量、方法和类的可变性。理解并正确使用`final`对于编写安全、稳定的代码至关重要。下面我们将详细探讨`final`修饰符的用法及其背后的原理...

    面向对象修饰符public private protest super final abstract理解

    这些修饰符包括`public`、`private`、`protected`以及`final`和`abstract`等。下面将详细解释这些关键字的意义及其在面向对象设计中的作用。 ### 1. `public` `public`是最开放的访问修饰符,意味着无论在哪一个类...

    JAVA访问修饰符大归纳

    修饰符类的访问修飾符共有四种:默认、public、abstract 和final。 * 默认(friendly):同一包中的类可以访问。 * public:任何包、任何类都可以访问。 * abstract:抽象类,是不能实例化的,只能被继承。 * final...

    第6章 Java语言中的修饰符.ppt

    `final`修饰符表示“不可改变”。它可用于修饰类、方法和变量。当`final`修饰类时,该类无法被继承;修饰方法意味着该方法不能被子类重写(override);修饰变量,变量一旦赋值后就不可更改。对于`final`变量,实例...

    java修饰符的使用.pdf

    2. 最终类(final):final 修饰符修饰的类称为最终类,final 类不可能有子类。 3. 静态类(static):static 修饰符修饰的类称为静态类,静态类可以在定义时初始化成员变量和方法。 在 Java 中,修饰符的使用是...

    java修饰符

    访问控制修饰符和非访问控制修饰符共同作用,不仅实现了封装、继承和多态等面向对象编程的基本特征,还提供了更高级的功能,如线程安全、不可变性和代码优化等,使Java程序具备了强大的灵活性和适应性。

    Java修饰符demo

    1. **final**:最终修饰符,用于防止类、方法或变量被修改。一旦声明为final,就不能再改变。例如,final类不能被继承,final方法不能被重写,final变量一旦赋值就不可更改。 2. **abstract**:抽象修饰符,用于...

    关于Java中各种修饰符与访问修饰符的说明

    Java是一种面向对象的编程语言,其中修饰符和访问修饰符是控制代码访问权限和行为的重要元素。本篇文章将详细介绍Java中的各种修饰符和访问修饰符。 1. **类的访问修饰符** - `public`:任何类都可以访问声明为`...

    java中final修饰符实例分析

    Java中的`final`修饰符是一个非常重要的关键字,它用于创建不可修改的变量、方法和类。在Java中,`final`具有以下含义: 1. **final变量**: - **成员变量**:如果一个类的成员变量(字段)被`final`修饰,那么它...

    Java final 修饰符知识点总结(必看篇)

    Java中的`final`修饰符是一个非常关键的概念,它在编程中起到了不可变性的作用,确保了数据的安全性和代码的稳定性。下面将详细讲解`final`修饰符在不同场景下的应用和注意事项。 1. **final修饰类** 当`final`...

    继承和接口和java访问权限修饰符总结.doc

    final 修饰符可以使得类不能被继承、方法不能被重写、变量不能被重新赋值。 七、abstract 修饰符 abstract 修饰符是指在 Java 中用来修饰类和方法的关键字。abstract 修饰符可以使得类不能被实例化、方法必须被子...

    Java修饰符总结

    在Java中,某些修饰符可以组合使用,如`public static`、`protected final`等,以达到更精细的控制效果。例如,`public static`方法表示该方法是公共的且与类实例无关,而`protected final`变量则表示受保护的且不可...

    Java修饰符.pdf

    这些修饰符在编写类、接口、方法和变量时起到至关重要的作用,确保代码的封装性、安全性和可维护性。 1. 访问修饰符: - `private`:私有访问修饰符,它限制了成员(变量和方法)只能在定义它的类内部访问。外部类...

Global site tag (gtag.js) - Google Analytics