黑马程序员技术交流社区

标题: 求高手解答! [打印本页]

作者: 云里雾里    时间: 2015-9-12 16:10
标题: 求高手解答!
public class Rectangle {
        private double a;
        private double b;
        public Rectangle(){
                this.a = 0;
                this.b = 0;
        }
        public Rectangle(double a,double b){
                this.a = a;
                this.b = b;
        }
        public double getRectangleA(){
                return a;
        }
        public double getRectangleB(){
                return b;
        }
        double s = a*b
        public void print(){
                System.out.print(s);
        }
}
....
public class Test9 {

        public static void main(String[] args) {
                Rectangle rt = new Rectangle(2.0, 4.0);
                rt.print();
       }
}
这是我封装的矩形类,然后在对象实例化调用print()方法,输出结果为0.0;而将double s= a * b删掉,直接在print()方法中system。out。print(a*b),输出结果是对的,这是什么原因啊?
作者: yanmingwang    时间: 2015-9-12 16:25
变量s在实例化Rectagle时就已执行,故其为s=a*b=0.0*0.0 = 0;
作者: 云里雾里    时间: 2015-9-12 16:29
yanmingwang 发表于 2015-9-12 16:25
变量s在实例化Rectagle时就已执行,故其为s=a*b=0.0*0.0 = 0;

谢谢,一语惊醒,明白了!




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