final 详见:
http://java.chinaitlab.com/base/724785.html
其中有这么写作用:
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。
final类不能被继承,没有子类,final类中的方法默认是final的。
final方法不能被子类的方法覆盖,但可以被继承。
final成员变量表示常量,只能被赋值一次,赋值后值不再改变。
final不能用于修饰构造方法。
注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型的。
transient : 简单的理解为
Java 的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想用serialization机 制来保存它。为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transient。
transient是Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的。
http://edu.gamfe.com/t/6133.html
在应用时,如果对某些成员变量都改为transient类型,将节省空间和时间,提高序列化的性能。
【注】 transient时,保存在file的是该类对象的持久化状态,read出来的时候,这个持久化状态会赋值给该类的另一个状态。
分享到:
相关推荐
在Java编程语言中,`final` 和 `transient` 是两个非常重要的关键字,它们分别用于不同的场景。让我们深入了解这两个关键字的含义、用法以及在实际编程中的应用。 首先,我们来谈谈`final`关键字。`final` 可以用于...
在Java编程语言中,`transient`是一个非常重要的关键字,它与对象持久化和序列化密切相关。当一个字段被声明为`transient`时,它表明该字段的值不会随着对象的序列化而保存。这通常用于那些不希望或者不需要在序列化...
`transient`关键字用于标记不需要序列化的对象属性,通常用于临时状态或敏感信息。 ### 44. try `try`关键字用于尝试执行可能抛出异常的代码块,与`catch`和`finally`关键字配合使用。 ### 45. void `void`...
在对象的生命周期中,`transient`变量的行为与其他非静态、非`final`字段相同,即在对象创建时初始化,可以通过 getter 和 setter 方法访问和修改。 总之,`transient`关键字在Java中用于指示某个字段不应作为对象...
50 多个关键字,它们包括但不限于 `abstract`、`assert`、`boolean`、`break`、`byte`、`case`、`catch`、`char`、`class`、`const`(虽然未使用)、`continue`、`default`、`do`、`double`、`else`、`enum`、`...
- `final`:不可改变的标识,用于类、方法或变量。 - `static`:静态修饰符,用于类级别的成员。 - `void`:无返回值的方法。 5. 异常处理: - `try`:定义可能抛出异常的代码块。 - `catch`:捕获并处理异常...
`transient`关键字表明字段不应该序列化。`native`表示方法的实现是在其他地方(如C/C++)完成的,通常与Java的JNI(Java Native Interface)一起使用。 最后,`package`关键字用于组织类和接口,提供命名空间,...
Java的关键字包括但不限于`abstract`, `assert`, `boolean`, `break`, `byte`, `case`, `catch`, `char`, `class`, `const`, `continue`, `default`, `do`, `double`, `else`, `enum`, `extends`, `final`, `finally...
### Java关键字总结 Java是一种广泛使用的面向对象编程语言,它具备简单性、可移植性、高性能等特点。在Java中,关键字具有特殊的语法含义,不能用作标识符(例如变量名或方法名)。以下是对给定文件中提到的Java...
这只是Java关键字的一部分,还有许多其他关键字,如 `float`, `for`, `if`, `import`, `instanceof`, `new`, `package`, `return`, `static`, `strictfp`, `super`, `this`, `throw`, `throws`, `transient`, `try`,...
深入理解Java虚拟机-Java内存区域透彻分析(序列化、反序列化概念及其使用场景+实现序列化的方式+transient关键字) Java序列化和反序列化是Java虚拟机中的一种重要机制,它们可以将Java对象转换为二进制数据,然后...
18. **final** - 用于声明变量、方法或类不可更改。 19. **finally** - 无论是否发生异常,都会执行的代码块。 20. **float** - 数据类型,单精度浮点数。 21. **for** - 循环结构,支持初始化、条件检查和更新...
- `public`, `private`, `protected`, `static`, `final`, `abstract`, `synchronized`, `volatile`, `transient`:这些关键字用于定义访问级别和修饰符。 - `try`, `catch`, `finally`, `throw`, `throws`:这些...
18. **final**:用于声明不可变的变量或类,或指定方法不能被重写。 19. **finally**:异常处理结构的一部分,无论是否发生异常都会执行的代码块。 20. **float**:基本数据类型之一,单精度浮点数。 21. **for**:...
30. **transient** 31. **catch** 32. **extends** 33. **int** 34. **short** 35. **try** 36. **char** 37. **final** 38. **interface** 39. **static** 40. **void** 41. **class** 42. **finally** 43. **long*...
6. **final**: 用于声明不可更改的变量、不可覆盖的方法或不可继承的类。 7. **abstract**: 用于声明抽象类或抽象方法,抽象类不能实例化。 8. **interface**: 用于声明接口,接口中所有的方法默认都是公共的和抽象...
18. **final** - **用途**:用于声明不可变的变量或方法,或者防止类被继承。 19. **finally** - **用途**:无论是否发生异常,都会执行的代码块,通常用于释放资源。 20. **float** - **用途**:32位单精度...
18. **final**:可以修饰类、方法和变量,表示不可改变或最终的。 19. **finally**:在try-catch-finally结构中,无论是否发生异常都会执行的代码块。 20. **float**:基本数据类型,表示单精度浮点数。 21. **...
10. 内存管理关键字:`transient`用于标记字段不序列化,`volatile`保证多线程环境中的可见性和有序性。 通过深入理解和熟练运用这些关键字,开发者可以编写出高效、稳定的Java程序。在学习过程中,结合实际案例来...