一.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来实现
分享到:
相关推荐
在Java编程语言中,`static`、`final`、`abstract`和`interface`是四个非常重要的关键字,它们分别代表不同的特性,用于定义类、变量和方法的行为。下面是对这些关键字的详细解释: 1. **static(静态)** - **...
在Java编程语言中,`final` 和 `static` 是两个非常重要的关键字,它们分别具有不同的含义和用法,但都对代码的结构和行为产生深远影响。本文将深入探讨这两个关键字,并结合实际示例来解释它们的应用场景。 首先,...
本文将详细总结 final 和 static 的使用方法和限制。 一、final 关键字 final 关键字可以用来修饰类、方法、变量等,它的主要作用是表明某个东西是“不可改变”的。下面是 final 关键字的使用方法和限制: 1、...
`final`可以用来修饰类、方法以及变量,其核心目的是为了保护数据的安全性和不可变性。 #### 二、final修饰类 当一个类被声明为`final`时,意味着这个类不能再被继承。这样的设计主要是为了保护类的设计不被外部...
Static、Final 和 Static Final 的区别 Static、Final 和 Static Final 是 Java 中三个重要的关键字,它们之间的区别和应用场景是开发者需要了解和掌握的。 首先,让我们来了解 Static 关键字。Static 是 Java 中...
在Java编程语言中,`final`与`static`是两个非常关键且常用的关键字,它们各自具有独特的功能和用途,可以极大地增强代码的稳定性和可维护性。下面将详细解析这两个关键字的用法及其在Java中的重要性。 ### 一、`...
Java 中的 final 和 static 关键字详解 Java 中的 final 和 static 关键字是两个重要的关键字,它们在 Java 编程中扮演着重要的角色。本文将详细介绍 final 和 static 关键字的使用方法和注意事项。 一、final ...
总结一下,`final`关键字用于防止继承、方法重写和变量值的改变,以确保代码的稳定性和设计意图。`static`关键字则用于定义类级别的成员,使其独立于对象实例存在,提高代码的复用性和效率。理解和熟练运用这两个...
总结起来,`static`、`this`、`super`和`final`是Java中用于控制类、对象和继承的关键字,它们帮助开发者创建健壮、可维护的代码。理解并熟练运用这些关键字是Java程序员必备的技能。在实际开发中,根据具体需求灵活...
总结一下,`final`关键字用于创建不可修改的变量,确保数据的不变性,而`static`关键字用于创建类级别的变量和方法,这些变量和方法与类的实例无关,而是与类本身关联。理解并恰当使用这两个关键字是编写健壮、可...
总结来说,`final`和`static`关键字在Java中都有其特定的作用。`final`主要用于防止类、方法或变量被改变,确保数据的不变性;而`static`则强调共享性,使得变量和方法独立于类的实例存在。了解并熟练掌握这两个...
static 可以修饰初始化代码块扩充内容三、final(最终的,最后的)1.final可以修饰变量2.final可以修饰方法3.final可以修饰类总结abstract、static、final可以修饰的内容abstract、static、final是否可以修饰构造...
下面将详细解释`static`关键字的使用以及与之相关的`super`和`final`关键字。 1. **静态方法(static methods)**: - 静态方法是与类相关联而不是与类的实例关联的方法。在示例中,`public static void main...
例如,在给定的代码示例中,`final int i`和`final List list`分别展示了这两种情况。`i`的值在构造函数中被设定后便不可更改,而`list`虽然不能再次被赋值新的`List`实例,但其内部元素可以添加或删除。 #### 2. `...
总结而言,`static`、`this`、`super` 和 `final` 是Java中非常重要的关键字,它们分别用于声明静态成员、引用当前对象、访问父类成员以及声明常量和不可变元素。熟练掌握这些关键字的使用对于编写高质量的Java代码...
总结起来,`static`、`this`、`super`和`final`是Java中控制对象生命周期、引用当前对象、访问父类成员以及确保数据不变性的重要工具。理解和熟练使用这些关键字对于编写高质量的Java代码至关重要。在实际编程中,应...
6. `final`和`static`一起使用时,常量的值不可变,存储在方法区。 理解并恰当使用`final`关键字有助于提高代码的可维护性、安全性和性能。在编写不可变对象、定义常量以及防止意外的代码修改时,`final`都是不可或...