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

Java fina 方法和类

阅读更多
final方法  

将方法声明为final那有两个原因:

第一就是说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。

第二就是允许编译器将所有对此方法的调用转化为inline(行内)调用的机制,它会使你在调用final方法时,直接将方法主体插入到调用处,而不是进行例行的方法调用,例如保存断点,压栈等,这样可能会使你的程序效率有所提高,然而当你的方法主体非常庞大时,或你在多处调用此方法,那么你的调用主体代码便会迅速膨胀,可能反而会影响效率,所以你要慎用final进行方法定义。
 
final类  
      
当你将final用于类身上时,你就需要仔细考虑,因为一个final类是无法被任何人继承的,那也就意味着此类在一个继承树中是一个叶子类,并且此类的设计已被认为很完美而不需要进行修改或扩展。

对于final类中的成员,你可以定义其为final,也可以不是final。

而对于方法,由于所属类为final的关系,自然也就成了final型的。你也可以明确的给final类中的方法加上一个final,但这显然没有意义。
分享到:
评论

相关推荐

    面向对象与Java实现(多态、static、fina

    在Java中,多态主要通过方法重载(Overloading)和方法重写(Overriding)来实现。 #### 方法重载:参数差异化的功能实现 方法重载允许在一个类中定义多个同名但参数列表不同的方法。这种机制增强了代码的可读性和复用...

    常用JAVA面试题大全

    被声明为fina l的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用, 不能重载。 finally—在异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,...

    java基础教程301集191 fina.mp4

    java基础教程301集191 fina.mp4

    关于Java中修饰符的总结(fina除外)

    Java修饰符是编程中至关重要的概念,它们用来指定类、接口、变量和方法的访问权限以及其它特性。本文主要讨论了Java中除`final`之外的一些常见修饰符,包括`public`、`protected`、`private`、`default`、`static`、...

    netty-3.5.4.Final.zip

    2. **测试注解**:通过注解标记测试类和测试方法,方便运行和组织测试。 3. **测试规则**:可以定义自定义规则,例如在测试前后执行特定操作,如资源清理。 4. **异常处理**:捕获和处理测试过程中抛出的异常,确保...

    深入浅析Java中的final关键字

    Java中的`final`关键字是一个非常重要的概念,它用于声明不可变的类、方法或变量,以确保代码的稳定性和安全性。下面将详细讲解`final`关键字的用途和使用细节。 一、`final`关键字的基本用法 1. 修饰类 当一个类...

    netty-all-4.1.27.Final-API文档-中英对照版.zip

    赠送jar包:netty-all-4.1.27.Final.jar; 赠送原API文档:netty-all-4.1.27.Final-javadoc.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    编译器说 Lambda 表达式中的变量必须是 final 的,我偏不信

    在Java编程语言中,Lambda表达式是一种简洁的匿名函数表示方式,它允许我们将代码块作为方法参数或在没有具体类实现的情况下定义行为。然而,Lambda表达式对变量的使用有特定的要求,这在标题和描述中已经提到。当...

    jeecms3.0.4

    基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点,采用hibernate3+struts2+spring2+freemarker主流技术架构,懂html就能建站,提供最便利、合理的使用方式 ,强大、灵活的标签,用户自定义...

    Tugas-ADPL-4:Fina Maulidiyah Nabila 034 D4 MI 2019A

    6. **项目管理**:理解敏捷开发方法,如Scrum或Kanban,以及如何有效地规划和跟踪项目进度。 7. **云计算与大数据**:如果涉及大数据处理,可能会学习Hadoop、Spark等分布式计算框架,以及如何在云端平台(如AWS、...

    hibernate-release-5.4.9.Final+5.1.2.Final.rar

    资源有5.4.9和5.1.2两个Hibernate,Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,...

    江苏卫视—跳水评分系统Diving

    每个跳水动作都有相应的难度系数,由FINA预先设定,反映了动作的复杂程度和技术含量。难度系数乘以动作的实际得分,得出最后的总分。这鼓励运动员挑战更高难度的动作,以获得更高的积分。 在技术实现上,跳水评分...

    Financial Supervision System (SupTech):RegTech / SupTech:Java EE、BI、PM 和报告设计器-开源

    FINA IRP 是基于 Web、J2EE、OS/DB 独立的 SupTech、BI 和 PM,用于 SUPERVISORS(监管机构)接收来自银行、微型金融机构(MFI)、合作社、保险公司等的数据。生成 UBPR、PEARLS、EWS 等。 FINA集成监管平台包括:-...

    Financial Supervision System (SupTech):RegTech / SupTech:Java EE,BI,PM和报表设计器-开源

    FINA IRP是基于Web的,J2EE,独立于OS / DB的SupTech,BI和PM,用于超级用户(监管者),以从银行,微金融机构(MFI),合作社,保险公司等接收数据。生成UBPR,PEARLS,EWS等。 FINA集成监管平台包括:-META结构...

    POI 3.5源码

    这个"POI 3.5源码"是Apache POI项目的源代码版本,发布于2009年09月28日,它提供了对Office文档格式的低级和高级API,使得开发者可以在Java环境中读取、写入和操作这些文件。 在POI 3.5源码中,我们可以深入理解...

    Kettle 公司培训办法.doc

    1. 设计源表(fina_test1)和目标表(fina_test2)。 2. 第一步,查询目标表的最大日期,作为源表数据的比较基准。 3. 第二步,基于第一步的结果,从源表中选择更新后的数据,这里的SQL语句会使用一个参数(即目标表...

    字符串时间转换时间格式问题带配图完整解决方案--kettle版.doc

    例如,假设我们有两个表:源表`fina_test1`和目标表`fina_test2`,增量ETL流程如下: 1. **获取基准日期**: - SQL:`SELECT IFNULL(MAX(date_seal), '1900-01-01 00:00:00') FROM fina_test2` 2. **读取源表数据*...

    kettle开发过程及字符转换等例子

    操作步骤:根据前面讲解的例子一样,首先建立源表(fina_test1)和目标表(fina_test2),整个设计流程如下:其中第一个步骤(输入-目标表)的 sql 大概如下模式:select ifnull(max(date_seal),'1900-01-01 00:00:...

    netty4.1.66.Final+springboot实现websocket交互 免费下载

    接着,我们需要创建一个WebSocket配置类,继承自`WebSocketConfigurer`接口,实现`registerWebSocketEndpoints`方法,用来注册WebSocket端点: ```java @Configuration @EnableWebSocket public class ...

Global site tag (gtag.js) - Google Analytics