黑马程序员技术交流社区

标题: 【已解决】一个关于private的疑惑 [打印本页]

作者: 张吉日    时间: 2012-8-8 10:48
标题: 【已解决】一个关于private的疑惑
本帖最后由 张吉日 于 2012-8-8 11:56 编辑

这个代码里 msg被封装了之后,必须要用构造函数过度一下吗,不可以直接使用 getMessage中的msg吗,他们不也是在同一个类中吗?     
class FushuException extends Exception // getMessage();
{
        private String msg;
        FushuException(String msg){
                this.msg = msg;
        }
        public String getMessage(){
                return msg;
        }
}
下面会有一个new FushuException(“abc”);
作者: 罗磊    时间: 2012-8-8 11:18
本帖最后由 罗磊 于 2012-8-8 11:31 编辑

这个代码里 msg被封装了之后,必须要用构造函数过度一下吗构造函数不是过度!它是给对象初始化!,不可以直接使用 getMessage中的msg吗(如果直接用,msg返回值一直为null,这样程序也就没意义,所以如果不想用构造函数初始化,也可用setMessage(){this.msg=msg}来操作msg),他们不也是在同一个类中吗?
通常我们写代码时,需要封装成员变量  构造函数  setXXX ()   getXXX( )  都要写哦 !因为到后面内省的时候会用到!   希望能对你有所帮助  一起加油!


作者: 张吉日    时间: 2012-8-8 11:55
罗磊 发表于 2012-8-8 11:18
这个代码里 msg被封装了之后,必须要用构造函数过度一下吗(构造函数不是过度!它是给对象初始化!),不可 ...

谢谢你..一起加油,支持黑马




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2