| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 720 人关注过本帖
标题:[求助]除了这样还能怎样写!?
只看楼主 加入收藏
ada518618
Rank: 1
等 级:新手上路
帖 子:184
专家分:0
注 册:2006-3-27
收藏
 问题点数:0 回复次数:4 
[求助]除了这样还能怎样写!?
有一道题目是这样的:
创建一个circle类,该类有属性:半径r。该类拥有方法分别计算面积和周长。该类还有方法设置和读取半径r。另外还设置有方法检查半径r是否等于0。
我是这样写的:
class Circle{
public double radii=5; //如果我在这里不给radii赋值的话,
private double PI=3.14;
public void setRadii(double r){
r=radii;
}
public double getRadii(){
return radii;
}
public double getArea(){
return PI*radii*radii;
}
public double getPerimeter(){
return PI*radii*2;
}
public static void main(String args[]){
Circle Circle1=new Circle();
Circle1.getArea(); //为什么不能在这给radii赋值呢!?
Circle1.getPerimeter(); //或这!老是说:无法将 Circle 中的 getArea() 应用于 (double)
//Circle1.getArea(1.5)。
System.out.println("Area="+Circle1.getArea());
System.out.println("Perimeter="+Circle1.getPerimeter());
}
}这不会又是数据类型的问题吧!?我想到头疼啊……
麻烦大家帮我看一下!还又就是帮设置有方法检查半径r是否等于0的方法告诉我!

搜索更多相关主题的帖子: public private double return 
2006-04-16 11:38
zhouyao_14
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2006-2-15
收藏
得分:0 
怎么不可以了啊 
public double getArea(double rr){
radii=rr;
return PI*radii*radii;
}
Circle1.getArea(5.0);
是这个意思吗

2006-04-16 12:45
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
当然可以用别的方法写
你把参数传进来就可以了

可惜不是你,陪我到最后
2006-04-16 13:34
Goldgulf
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-4-6
收藏
得分:0 

不过,你原来的方法比较标准一点阿。

2006-04-16 19:07
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
如果要能以传入的参数求面积的话,那最好是定义一个静态方法,因为这个方法不需要依赖于对象而存在的,这样做会更好一些。因为传入的参数和对象是一点关系都没有的。

可惜不是你,陪我到最后
2006-04-16 19:10
快速回复:[求助]除了这样还能怎样写!?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015381 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved