java问题,用的eclipse,怎么调试都不行
packagehomework;classMyRectangle{privateintxUp;privateintyUp;privateintxDown;privatei...
package homework;
class MyRectangle{
private int xUp;
private int yUp;
private int xDown;
private int yDown;
MyRectangle(){
SetXYUp(0,0);
SetXYDown(0,0);
}
MyRectangle(int a,int b,int c,int d){
SetXYUp(a,b);
SetXYDown(c,d);
}
public int GetXUp() {
return xUp;
}
public int GetYUp() {
return yUp;
}
public int GetXDown() {
return xDown;
}
public int GetYDown() {
return yDown;
}
public void SetXYUp(int a,int b){
xUp=a;
yUp=b;
}
public void SetXYDown(int a,int b){
xDown=a;
yDown=b;
}
int getH(){
return yUp-yDown;
}
int getW(){
return xUp-xDown;
}
int area(){
int area=(yUp-yDown)*(xUp-xDown);
return area;
}
public String toString(){
MyRectangle a=new MyRectangle();
MyRectangle b=new MyRectangle();
MyRectangle c=new MyRectangle();
return "高="+a.getH()+"宽="+b.getW()+"面积="+c.area();
}
}
public class Ex10 {
public static void main(){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
才开始学,不知道哪里错了,运行不起,就调试,但是调试都不行 展开
class MyRectangle{
private int xUp;
private int yUp;
private int xDown;
private int yDown;
MyRectangle(){
SetXYUp(0,0);
SetXYDown(0,0);
}
MyRectangle(int a,int b,int c,int d){
SetXYUp(a,b);
SetXYDown(c,d);
}
public int GetXUp() {
return xUp;
}
public int GetYUp() {
return yUp;
}
public int GetXDown() {
return xDown;
}
public int GetYDown() {
return yDown;
}
public void SetXYUp(int a,int b){
xUp=a;
yUp=b;
}
public void SetXYDown(int a,int b){
xDown=a;
yDown=b;
}
int getH(){
return yUp-yDown;
}
int getW(){
return xUp-xDown;
}
int area(){
int area=(yUp-yDown)*(xUp-xDown);
return area;
}
public String toString(){
MyRectangle a=new MyRectangle();
MyRectangle b=new MyRectangle();
MyRectangle c=new MyRectangle();
return "高="+a.getH()+"宽="+b.getW()+"面积="+c.area();
}
}
public class Ex10 {
public static void main(){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
才开始学,不知道哪里错了,运行不起,就调试,但是调试都不行 展开
4个回答
展开全部
你没写main函数的参数,还有toString()函数的方法不对,最后就是高和宽以及面积没写绝对值。
其他错误没有了,下面是改好的程序,你看看吧。
class MyRectangle{
private int xUp;
private int yUp;
private int xDown;
private int yDown;
MyRectangle(){
SetXYUp(0,0);
SetXYDown(0,0);
}
MyRectangle(int a,int b,int c,int d){
SetXYUp(a,b);
SetXYDown(c,d);
}
public int GetXUp() {
return xUp;
}
public int GetYUp() {
return yUp;
}
public int GetXDown() {
return xDown;
}
public int GetYDown() {
return yDown;
}
public void SetXYUp(int a,int b){
xUp=a;
yUp=b;
}
public void SetXYDown(int a,int b){
xDown=a;
yDown=b;
}
int getH(){
return Math.abs(yUp-yDown);
}
int getW(){
return Math.abs(xUp-xDown);
}
int area(){
int area=Math.abs(yUp-yDown)*Math.abs(xUp-xDown);
return area;
}
public String toString(){
return "高="+getH()+"宽="+getW()+"面积="+area();
}
}
public class Ex10 {
public static void main(String[] args){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
运行结果:
高=1宽=1面积=1
MyRectangle point: 高=1宽=1面积=1
其他错误没有了,下面是改好的程序,你看看吧。
class MyRectangle{
private int xUp;
private int yUp;
private int xDown;
private int yDown;
MyRectangle(){
SetXYUp(0,0);
SetXYDown(0,0);
}
MyRectangle(int a,int b,int c,int d){
SetXYUp(a,b);
SetXYDown(c,d);
}
public int GetXUp() {
return xUp;
}
public int GetYUp() {
return yUp;
}
public int GetXDown() {
return xDown;
}
public int GetYDown() {
return yDown;
}
public void SetXYUp(int a,int b){
xUp=a;
yUp=b;
}
public void SetXYDown(int a,int b){
xDown=a;
yDown=b;
}
int getH(){
return Math.abs(yUp-yDown);
}
int getW(){
return Math.abs(xUp-xDown);
}
int area(){
int area=Math.abs(yUp-yDown)*Math.abs(xUp-xDown);
return area;
}
public String toString(){
return "高="+getH()+"宽="+getW()+"面积="+area();
}
}
public class Ex10 {
public static void main(String[] args){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
运行结果:
高=1宽=1面积=1
MyRectangle point: 高=1宽=1面积=1
展开全部
String s="MyRectangle point: "+point;
//直接打印一个对象的话,应该是打印出对象的引用,就是堆里的实例的首地址
//直接打印一个对象的话,应该是打印出对象的引用,就是堆里的实例的首地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把这个类
public class Ex10 {
public static void main(){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
定义到一个新的文件中试试!
public class Ex10 {
public static void main(){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
定义到一个新的文件中试试!
追问
定义到一个新的文件??
追答
对啊 要不你就把 类名和那个public的类同名 楼下正解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
main的参数写错了,应该这样写
public class Ex10 {
public static void main(String[] args){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
public class Ex10 {
public static void main(String[] args){
MyRectangle point=new MyRectangle(2,2,3,1);
String s="MyRectangle point: "+point;
System.out.println(point);
System.out.println(s);
}
}
追问
谢谢,粗心了,但是还是不对,运行结果:
高=0宽=0面积=0
MyRectangle point: 高=0宽=0面积=0
追答
你只是说运行不了,没有说逻辑有问题呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询