关于java中 return的
部分代码如下publicclassCuboid{privatedoubleheight;privatedoublewidth;privatedoublelength;pu...
部分代码如下
public class Cuboid {
private double height;
private double width;
private double length;
public Cuboid(double length,double width,double height){
this.length=length;
this.height=height;
this.width=width;
}
public double volume(){
return length*width*height;
}
public double getHeight(){
return height;
}
public void setHeight(double height){
this.height=height;
}
public double getWidth(){
return width;
}
public void setWidth(double width){
this.width=width;
}
public double getLength(){
return length;
}
public void setLength(double length){
this.length=length;
}
}
解释下 这个return语句 到底把值返回给谁了 程序从头到尾都没发现调用的地方
前面的那个volume()方法既然已经返回了所需要的值 为什么还要将 长宽高每个再返回一次 整个程序代码都没发现有点用的地方 能解释下 return length return heigh 这些返回的作用么? 还有到底返回给谁了? 展开
public class Cuboid {
private double height;
private double width;
private double length;
public Cuboid(double length,double width,double height){
this.length=length;
this.height=height;
this.width=width;
}
public double volume(){
return length*width*height;
}
public double getHeight(){
return height;
}
public void setHeight(double height){
this.height=height;
}
public double getWidth(){
return width;
}
public void setWidth(double width){
this.width=width;
}
public double getLength(){
return length;
}
public void setLength(double length){
this.length=length;
}
}
解释下 这个return语句 到底把值返回给谁了 程序从头到尾都没发现调用的地方
前面的那个volume()方法既然已经返回了所需要的值 为什么还要将 长宽高每个再返回一次 整个程序代码都没发现有点用的地方 能解释下 return length return heigh 这些返回的作用么? 还有到底返回给谁了? 展开
展开全部
这样说吧:volume()返回的是三个值之积,如果你现在只想获得长宽高中的一个呢?
比如只过去高:double leng=getLength();
那么
public double getLength(){
return length;
}
的返回值就返回给leng了。
再简单点说,返回值就是这个方法的最终结果,调了这个方法就相当于调了它的返回值。
比如只过去高:double leng=getLength();
那么
public double getLength(){
return length;
}
的返回值就返回给leng了。
再简单点说,返回值就是这个方法的最终结果,调了这个方法就相当于调了它的返回值。
追问
意思就是 部分代码没有用到是吧 还有
public void setHeight(double height){
this.height=height
这与上面所写的
public Cuboid(double length,double width,double height){
this.length=length;
this.height=height;
this.width=width;
没有重复么?
追答
没有重复。上面是单独设值的时候调用的,比如设置高度就可以调用setHeight(5.5),高度就为5.5;
下面是构造方法,就是在new一个类的时候需要调用的,比如 new Cuboid(1,2,3);
一次性设置三个值。如果后面需要修改某个值可以调用像上面那样的单独的方法就可以了。
比如setHeight(5),就把高改成5了
展开全部
调用的地方在其他的类里面
get set方法是封装的特点,算是规矩吧,需要添加上,实际可能没有用到,但是很重要;
你的程序简单,只用了volume方法的话,可以不用写get set方法。
返回给的是调用它的地方,没调用就没返回
get set方法是封装的特点,算是规矩吧,需要添加上,实际可能没有用到,但是很重要;
你的程序简单,只用了volume方法的话,可以不用写get set方法。
返回给的是调用它的地方,没调用就没返回
追问
意思就是 部分代码没有用到是吧 还有
public void setHeight(double height){
this.height=height
这与上面所写的
public Cuboid(double length,double width,double height){
this.length=length;
this.height=height;
this.width=width;
没有重复么?
追答
不重复,public Cuboid(double length,double width,double height)是构造对象的同时赋值;
也可以Cuboid c = new Cuboid(); c.setHeight(...); 来构造,当然要先加上public Cuboid()默认构造器
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不太好说,可能说的多点。
这里用到“封装”的概念,在一个类定义private私有变量,就是把变量封装起来,别的类就无法想定义public共有变量那样使用这个类的数据,只能通过这个类中的get,set方法。get使用从这个类中得到数据,也就是用return的方式让别的类去使用。set是将数据传递给这个类。
其实,只要理解了面向对象中的“封装”“继承”“多态”,这些就都不是问题了。
这里用到“封装”的概念,在一个类定义private私有变量,就是把变量封装起来,别的类就无法想定义public共有变量那样使用这个类的数据,只能通过这个类中的get,set方法。get使用从这个类中得到数据,也就是用return的方式让别的类去使用。set是将数据传递给这个类。
其实,只要理解了面向对象中的“封装”“继承”“多态”,这些就都不是问题了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
注意this 的用法,this指代当前实例对象,this.length就调用 了方法,而方法中有return语句,就会把值返回到哪里调用它的地方。你好好看看
追问
亲 貌似有点懂了 继续问下public Cuboid(double length,double width,double height) 这里不是已经给 this.length this.heigh this.width 赋值了么? 那下面的是干什么用的
追答
你试着给所有的方法赋几个值,然后又改变着给setHeight,setWidth,方法赋几个值看看,有什么效果。楼上说得挺对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询