如何在Java中创建Immutable类?
Immutable类意味着一旦创建了一个对象,我们就无法改变它的内容。在Java的中,所有包装类(如字符串,布尔值,字节,短)和字符串类都是不可变的。我们也可以创建自己的不可变类。
以下是要求:
•必须将类声明为最终(因此无法创建子类)
•必须将类中的数据成员声明为最终(因此在创建对象后我们无法更改它的值)
•参数化构造函数
•其中所有变量的吸气方法
•无二传手(无法更改实例变量的值)
- 创建不可变类的示例
// immutable class public final class Student { final String name; final int regNo; public Student(String name,int regNo) { this.name = name; this.regNo = regNo; } 公共字符串的getName() { 返回名字; } 公众诠释getRegNo() { 返回REGNO; } } //驱动程序类 类Test { public static void main(String args []) { Student s = new Student(“ABC”,101); 的System.out.println(s.getName()); 的System.out.println(s.getRegNo()); //取消下面一行的注释会导致错误 // s.regNo = 102; } }
输出: ABC 101
在这个例子中,我们创建了一个名为学生的最终类。它有两个最终数据成员,一个参数化构造函数和吸气方法。请注意,这里没有二传手方法。
(为了使其正常工作,在主函数中创建的学生类的对象。)
整套架构面试题及答案获取你若是热爱技术,喜欢程序员这一职业,有理想成为一名架构师,想面试跳槽涨薪,想提升自己的技术水平,想与同为程序员的朋友们交流,欢迎加入Java进阶架构交流:142019080。这里免费提供架构视频资料,一手面试资料及答案。
直接点击链接加群。https://jq.qq.com/?_wv=1027&k=5lXBNZ7
欢迎加入Java进阶架构交流群:142019080。