`
包涵
  • 浏览: 38005 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

final关键字的使用

    博客分类:
  • OOP
阅读更多
当利用final修饰一个属性(变量)的时候,此时的属性成为常量。

注意JAVA命名规范中常量全部字母大写:

Final int AGE=10;

常量的地址不可改变,但在地址中保存的值(即对象的属性)是可以改变的。

在JAVA中利用public static final的组合方式对常量进行标识(固定格式)。



Final变量是在整个类被创建时候被赋值,之后就不能改变了。

对于final变量,如果在声明的时候和构造的时候均不进行赋值,编译出错。



对于利用构造方法对final变量进行赋值的时候,此时在构造之前系统设置的默认值被覆盖。



常量(这里的常量指的是实例常量:即成员变量)赋值:

①在初始化的时候通过显式声明赋值。Final int x=3;

②在构造的时候赋值。

Class A{

Final int x=3;

Public A(){

x=4;

}

}

1.1.2.       final方法不能被改写;

利用final定义方法:这样的方法为一个不可覆盖的方法。

Public final void print(){};

为了保证方法的一致性(即不被改变),可将方法用final定义。

如果在父类中有final定义的方法,那么在子类中继承同一个方法。

如果一个方法前有修饰词private或static,则系统会自动在前面加上final。即private和static方法默认均为final方法。



注:final并不涉及继承,继承取决于类的修饰符是否为private、default、protected还是public。也就是说,是否继承取决于这个类对于子类是否可见。

Final和abstract永远不会同时出现。

1.1.3.       final类不能被继承;

final修饰类的时候,此类不可被继承,即final类没有子类。这样可以用final保证用户调用时动作的一致性,可以防止子类覆盖情况的发生。

String 类数据final类 ,目的是提供效率保证安全。





1.1.4.       String 类

String 的声明:public final class String 无法继承,强不变模式

字符串池―――――――――――――>池化思想  数据库连接池,EJB池

public class TestString {

public static void main(String[] args){

String s1=new String(“abc”);

String s2=s1;

s1+=”d”;

System.out.println( s1 );

System.out.println( s1==s2 );

}

}

便于实例重用

不要轻易在heap里创建空间

intern()  返回池地址



对于字符串连接



str=”123”+”456”+”789”+“123”;

产生:

    123456

123456789

123456789123

产生多余对象



应该使用 StringBuffer(线程安全的) 或者 StringBuilder(线程不安全的)

String str=”hello:nihao:happy”;

StringTokenizer st=new StringTokenizer(s,”:”);

while(st.hasMoreTokens()){

String str=st.nextToken();

System.out.println(str);

}
分享到:
评论

相关推荐

    final关键字的使用.mp4

    final关键字的使用f

    22.final关键字.zip

    22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22...

    final关键字详细解读

    对于初学者来说,掌握final关键字的使用可以帮助编写出更加稳定和安全的代码。下面将详细解读final关键字在不同场景下的应用和含义。 1. final修饰类:当使用final关键字修饰一个类时,该类不能被其他类继承。这一...

    Java final关键字

    在Java编程语言中,`final`关键字扮演着一个至关重要的角色...通过合理使用`final`,我们可以提高代码的可读性、可维护性和安全性。在实际开发中,应根据需求灵活运用`final`关键字,以实现更清晰、更稳定的代码设计。

    Java编程中static和final关键字的陷阱.pdf

    Java编程中static和final关键字的陷阱是Java开发中两个重要的关键字,但是它们的使用也存在一些陷阱,需要开发者注意掌握。 static关键字可以用于修饰属性、方法和类。static关键字修饰的成员变量称为静态成员变量...

    final 关键字用法

    java程序设计中,final 关键字用法,通过代码演示java程序设计中,final 关键字用法,

    java中final关键字使用示例详解

    4. **final关键字的好处** - 提高性能:JVM可以对`final`变量进行优化,因为它们的值是不可变的,这有助于提升程序执行速度。 - 多线程安全:`final`变量在多线程环境中可以直接共享,因为它们的值不会改变,从而...

    深入理解Java中的final关键字_动力节点Java学院整理

    使用 `final` 关键字时,还有一些具体规则: 1. 对于成员变量,`final` 必须在声明时初始化或在构造器中初始化。 2. 局部变量必须在声明时立即赋值。 3. 匿名类中的所有变量必须是 `final` 的。 4. `final` 方法不能...

    Java零基础-final关键字.md

    读者将能够理解final关键字的基本定义、用途及作用范围,并且掌握如何在不同的编程场景中合理使用它。此外,文章还探讨了final关键字在构造方法、类、方法以及变量等方面的具体应用,并提出了一些重要的规则与注意...

    day11 05 final关键字用于修饰成员变量

    day11_05_final关键字用于修饰成员变量

    final关键字的使用思维导图

    关于final关键字的使用思维导图,可使用freemind软件打开,该软件为免费软件,下载后可自由进行修改

    Java学习笔记---15.面向对象编程10-Java中final关键字,抽象类与接口

    1. **final关键字** - `final`关键字用于确保变量的值一旦被赋值后就不能改变,或者类和方法不能被进一步扩展。 - 当`final`修饰类时,该类不能被继承,如`final class MyClass {}`,这意味着MyClass不能作为其他...

    Java面向对象(高级)- final关键字的使用

    Java面向对象(高级)-- final关键字的使用

    Java中final关键字详解

    谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法。 主要介绍:一.final关键字的基本...

    【Java语言基础】final关键字

    【Java语言基础】final关键字 修饰词:final 最终的最后的 final关键字可用于修饰符,变量和方法,用于表示它修饰的类,方法和方法不可改变。 final 最终的最后的 final修饰变量时,表示该变量一旦获得了初始值之后...

    Java中的final关键字详解及实例

    Java中的final关键字 1、修饰类的成员变量 这是final的主要用途之一,和C/C++的const,即该成员被修饰为常量,意味着不可修改。   上面的代码对age进行初始化后就不可再次赋值,否则编译时会报类似上图的错误。 ...

    final关键字思维导图.xmind

    final关键字

    深入解析Java编程中final关键字的作用

    final关键字可以与public、protected、private以及static一起使用,来限制不同范围内的重写和隐藏。例如,final static方法确保了在整个程序中其行为的一致性。 8. **final与构造器**: 一个final类不能有抽象...

Global site tag (gtag.js) - Google Analytics