`
chinagdvea
  • 浏览: 132359 次
  • 性别: Icon_minigender_1
  • 来自: 韶关
社区版块
存档分类
最新评论

[转]static和final总结

阅读更多
一.final总结

  1.final修饰类:表示该类不可继承

  final不能修饰interface接口

  2.final修饰方法:表示该方法不能被子类覆盖(即子类不能重写父类的final方法,可以继承)

  final不能修饰构造函数

  3.final修饰字段属性:表示属性值第一次初始化后不能被修改

  final属性可以直接初始化或在构造函数中初始化

  如果属性是直接初始化,则其值不能被其它函数(包括构造函数)修改

  4.final修饰函数参数

  参数值不能被函数修改

  5.final修饰函数中的局部变量

  局部变量被第一次初始化后不能被修改

  public void hello() {

  final String name;

  name = "hi";       //ok

  name = "hello";    //error

  }

  使用final的意义:

  第一,为方法“上锁”,防止任何继承类改变它的本来含义和实现。设计程序时,若希望一个方法的行为在继承期间保持不变,而且不可被覆盖或改写,就可以采取这种做法。

  第二,提高程序执行的效率,将一个方法设成final后,编译器就可以把对那个方法的所有调用都置入“嵌入”调用里(内嵌机制)。

  二.static总结

  1.static修饰成员函数:该成员函数不能使用this对象

  static不能修饰构造函数

  static不能修饰函数参数

  static不能修饰局部成员变量

  2.static修饰成员字段

  当类被虚拟机加载时,首先按照字段声明的先后顺序对static成员字段进行初始化

  3.static修饰语句块

  当类被虚拟机加载时,按照声明顺序先后初始化static成员字段和static语句块

  static所修饰的方法和字段是只属于类,所有对象共享。

  在static所修饰的函数和语句块中不能使用非static成员字段。

  在Java不能直接定义全局变量,是通过static来实现的

  在Java中没有const,不能直接定义常量,通过static final来实现


分享到:
评论

相关推荐

    static、final、abstract和interface使用总结

    在Java编程语言中,`static`、`final`、`abstract`和`interface`是四个非常重要的关键字,它们分别代表不同的特性,用于定义类、变量和方法的行为。下面是对这些关键字的详细解释: 1. **static(静态)** - **...

    java中final和static的总结

    在Java编程语言中,`final` 和 `static` 是两个非常重要的关键字,它们分别具有不同的含义和用法,但都对代码的结构和行为产生深远影响。本文将深入探讨这两个关键字,并结合实际示例来解释它们的应用场景。 首先,...

    Java关键字final、static使用总结

    本文将详细总结 final 和 static 的使用方法和限制。 一、final 关键字 final 关键字可以用来修饰类、方法、变量等,它的主要作用是表明某个东西是“不可改变”的。下面是 final 关键字的使用方法和限制: 1、...

    final关键字和static_用法

    `final`可以用来修饰类、方法以及变量,其核心目的是为了保护数据的安全性和不可变性。 #### 二、final修饰类 当一个类被声明为`final`时,意味着这个类不能再被继承。这样的设计主要是为了保护类的设计不被外部...

    java中final与static的用法

    在Java编程语言中,`final`与`static`是两个非常关键且常用的关键字,它们各自具有独特的功能和用途,可以极大地增强代码的稳定性和可维护性。下面将详细解析这两个关键字的用法及其在Java中的重要性。 ### 一、`...

    javafinal和static总结.docx

    Java 中的 final 和 static 关键字详解 Java 中的 final 和 static 关键字是两个重要的关键字,它们在 Java 编程中扮演着重要的角色。本文将详细介绍 final 和 static 关键字的使用方法和注意事项。 一、final ...

    java中final关键字和static关键字详细用法

    总结一下,`final`关键字用于防止继承、方法重写和变量值的改变,以确保代码的稳定性和设计意图。`static`关键字则用于定义类级别的成员,使其独立于对象实例存在,提高代码的复用性和效率。理解和熟练运用这两个...

    详解static 和 final 和 static final区别

    Static、Final 和 Static Final 的区别 Static、Final 和 Static Final 是 Java 中三个重要的关键字,它们之间的区别和应用场景是开发者需要了解和掌握的。 首先,让我们来了解 Static 关键字。Static 是 Java 中...

    Java中static、this、super、final用法简谈

    总结起来,`static`、`this`、`super`和`final`是Java中用于控制类、对象和继承的关键字,它们帮助开发者创建健壮、可维护的代码。理解并熟练运用这些关键字是Java程序员必备的技能。在实际开发中,根据具体需求灵活...

    JavaSE024static与final使用陷阱续..pdf

    总结一下,`final`关键字用于创建不可修改的变量,确保数据的不变性,而`static`关键字用于创建类级别的变量和方法,这些变量和方法与类的实例无关,而是与类本身关联。理解并恰当使用这两个关键字是编写健壮、可...

    static spuer final

    下面将详细解释`static`关键字的使用以及与之相关的`super`和`final`关键字。 1. **静态方法(static methods)**: - 静态方法是与类相关联而不是与类的实例关联的方法。在示例中,`public static void main...

    java基础中的final和static

    总结来说,`final`和`static`关键字在Java中都有其特定的作用。`final`主要用于防止类、方法或变量被改变,确保数据的不变性;而`static`则强调共享性,使得变量和方法独立于类的实例存在。了解并熟练掌握这两个...

    资深互联网大佬的5000字吐血总结——Java面向对象三大修饰符之abstract、static、final

    static 可以修饰初始化代码块扩充内容三、final(最终的,最后的)1.final可以修饰变量2.final可以修饰方法3.final可以修饰类总结abstract、static、final可以修饰的内容abstract、static、final是否可以修饰构造...

    JAVA(static、finalの使用).doc

    例如,在给定的代码示例中,`final int i`和`final List list`分别展示了这两种情况。`i`的值在构造函数中被设定后便不可更改,而`list`虽然不能再次被赋值新的`List`实例,但其内部元素可以添加或删除。 #### 2. `...

    Java-关键字final详解(public static final)

    6. `final`和`static`一起使用时,常量的值不可变,存储在方法区。 理解并恰当使用`final`关键字有助于提高代码的可维护性、安全性和性能。在编写不可变对象、定义常量以及防止意外的代码修改时,`final`都是不可或...

    Java中static、this、super、final用法

    总结而言,`static`、`this`、`super` 和 `final` 是Java中非常重要的关键字,它们分别用于声明静态成员、引用当前对象、访问父类成员以及声明常量和不可变元素。熟练掌握这些关键字的使用对于编写高质量的Java代码...

    Java中static、this、super、final用法.doc

    总结起来,`static`、`this`、`super`和`final`是Java中控制对象生命周期、引用当前对象、访问父类成员以及确保数据不变性的重要工具。理解和熟练使用这些关键字对于编写高质量的Java代码至关重要。在实际编程中,应...

Global site tag (gtag.js) - Google Analytics