如何用Java制作一个只读类?

问题是“我们可以用Java制作一个只读类吗?”

答案是:“是的,我们可以在Java中将其设为只读。”

在Java中定义只读类

现在,我们将在几个步骤中看到如何制作只读类以及下面给出的各个步骤:

我们可以通过将所有数据成员设为私有来将类设为只读。

请注意:

  • 如果我们将类设为只读,则无法修改该类的属性或数据成员值。

  • 如果我们将类设为只读,则只能读取该类的属性或数据成员值。

  • 只读类将只包含 getter 方法,该方法将私有属性的值返回给 main ()函数。

  • 如果我们想在读取后修改私有属性的值,只读类可以包含setter方法,因为我们可以选择在类中保留setter方法,但是基于我们不应该包含的概念。

现在,我们将看到getter方法的目标,为什么需要它?

以下是关于getter方法需要记住的几点:

  • 众所周知,该类的“private”数据成员只能在同一类中访问。

  • 假设我们要在外部类中访问该类的“private”数据成员。因此,在这种情况下,我们需要声明公共的“ getter”方法。

  • getter方法的目标用于查看私有变量值。

语法:

public returntype getDataMember_Name();

在Getter方法中,获取后并不一定要使用相同的数据成员名称,但是对于我们理解而言,方便的是,我们应该考虑与获取后的数据成员使用相同的名称。

下面给出了getter方法的一些优点:

  • 隐藏私有数据成员的内部表示。

  • Getter方法提供访问级别层次结构。

  • 此方法以后可以轻松添加其他功能。

  • 此类允许getter方法作为lambda表达式而不是值传递。

  • 私有数据成员可以通过getter方法从类外部访问。

示例

//Java程序演示的例子 
 //在Java中创建只读类

 public class Weeks {
     //私有数据成员声明
     private String days = "7 days";

     //定义 Getter 方法以返回
     //私有属性。
     public String getDays() {
         return days;
     }

     public static void main(String[] args) {
         //周对象实例化
         Weeks w = new Weeks();

         //获取私有成员的值
         String result = w.getDays();
         //显示私有属性的值
         System.out.println("Days in a Week:" + " " + result);

     }
 }

输出结果

Days in a Week: 7 days