在setter之前调用getter方法

时间:2014-04-17 13:42:37

标签: java getter-setter

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

4 个答案:

答案 0 :(得分:0)

是的,你需要在getter中检查null,如果找到null则抛出异常。 因此,在运行时如果调用getter而不设置其值,则会抛出异常。

祝你好运

答案 1 :(得分:0)

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

答案 2 :(得分:0)

请参阅此示例

 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。为避免这种情况,请使用构造函数初始化变量。

答案 3 :(得分:0)

你肯定可以在setter之前调用getter,但是如果没有为变量设置值,它会返回一个空集。你可以尝试异常处理