无法从静态上下文中引用非静态 变量 this的问题,求指导

[复制链接]
查看11 | 回复4 | 2021-1-27 06:32:09 | 显示全部楼层 |阅读模式
importjava.util.Scanner;
importjava.lang.Math;
publicclassrrrr
{
publicstaticvoidmain(String[]args)
{
Scannersc=newScanner(System.in);
Pointq=newPoint(0,0,0);
Pointw=newPoint(1,1,1);
Pointe=newPoint();
Pointr=newPoint();
q.setPoint(w);
System.out.println("请按x,y,z的顺序依次输入两个点的坐标,已回车结束。");
e.x=sc.nextInt();
e.y=sc.nextInt();
e.z=sc.nextInt();
r.x=sc.nextInt();
r.y=sc.nextInt();
r.z=sc.nextInt();
q.length(e,r);
}
//staticclassPoint
classPoint
{
privateintx;
privateinty;
privateintz;
publicPoint(){}
publicPoint(inta,intb,intc)
{
x=a;
y=b;
z=c;
}
publicPointsetPoint(Points)//修改点位置
{
s.x=x;
s.y=y;
s.z=z;
returns;
}
publicPointlength(Pointa,Pointb)
{
intX,Y,Z,len;
X=(int)Math.pow(a.x-b.x,2);
Y=(int)Math.pow(a.y-b.y,2);
Z=(int)Math.pow(a.z-b.z,2);
len=(int)Math.sqrt(X+Y+Z);
System.out.println("两点间的距离为:"+len);
returna;
}
}
}
我的程序是这样的。为什么把Point类前加上static就对了啊?怎么理解importjava.util.Scanner;
importjava.lang.Math;
publicclassrrrr
{
publicstaticvoidmain(String[]args)
{
Scannersc=newScanner(System.in);
Pointq=newPoint(0,0,0);
Pointw=newPoint(1,1,1);
Pointe=newPoint();
Pointr=newPoint();
q.setPoint(w);
System.out.println("请按x,y,z的顺序依次输入两个点的坐标,已回车结束。");
e.x=sc.nextInt();
e.y=sc.nextInt();
e.z=sc.nextInt();
r.x=sc.nextInt();
r.y=sc.nextInt();
r.z=sc.nextInt();
q.length(e,r);
}
//staticclassPoint
classPoint
{
privateintx;
privateinty;
privateintz;
publicPoint(){}
publicPoint(inta,intb,intc)
{
x=a;
y=b;
z=c;
}
publicPointsetPoint(Points)//修改点位置
{
s.x=x;
s.y=y;
s.z=z;
returns;
}
publicPointlength(Pointa,Pointb)
{
intX,Y,Z,len;
X=(int)Math.pow(a.x-b.x,2);
Y=(int)Math.pow(a.y-b.y,2);
Z=(int)Math.pow(a.z-b.z,2);
len=(int)Math.sqrt(X+Y+Z);
System.out.println("两点间的距离为:"+len);
returna;
}
}
}
为什么把point类前面加上static就对了啊?无法从静态上下文中引用非静态变量this这个问题怎么理解?
新手求指导

分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:32:09 | 显示全部楼层
说的这么直白了还不明白


回复

使用道具 举报

千问 | 2021-1-27 06:32:09 | 显示全部楼层
静态的不能用非静态的,这有啥难理解的?


回复

使用道具 举报

千问 | 2021-1-27 06:32:09 | 显示全部楼层
静态的只能调用静态的属性方法,不能调用非静态的
回复

使用道具 举报

千问 | 2021-1-27 06:32:09 | 显示全部楼层
自己已经都写明白了,好好看看基础吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行