繁体   English   中英

在 setter 之前调用 getter 方法

[英]Calling getter methods before setter

在任何 Java 程序中,一般来说,我几乎总是有 getter 和 setter 方法。 在调用 getter 方法之前调用 setter 方法是通常要遵循的规则。 但是,理论上,可以在不先调用 setter 方法的情况下调用 getter 方法。 我很好奇的是,当我在调用 setter 方法之前错误地调用 getter 方法时,是否有任何 OO 设计可能会在编译时抱怨。

是的,您需要在 getter 中检查 null 并在发现 null 时抛出异常。 因此,在运行时,如果您在未设置其值的情况下调用 getter,它将引发异常。

祝你好运

只需在 try catch 块中调用您的 getter 方法,这样即使您的 getter 值为空,执行流程也不会停止。

请看这个例子

 public class Example{

 private String description;
 //Setters and getters
 }


 public static void main(String[] args){
    Example example=new Example();
    if(example.getDescription().length()<=0){    //NullPointerException here
        example.setDescription("Please write some description");
    }
 }

因此,对于对象,如果在 setter 之前调用 getter,则需要检查 null。 为避免这种情况,请使用构造函数初始化变量。

您当然可以在 setter 之前调用 getter,但如果未为变量设置值,它将返回一个空集..您可以尝试使用异常处理

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM