暂无权限

加入尚新途,才有权限看这些视频哦!

点击前往
×
问答
ෆ 电量1%  
1楼

这里为什么是_x和_y,为什么不直接写x,y啊

image.png

只是为了更好的区分成员变量和局部变量  这里可以自己改的

middle
2楼

图片.pngw为啥这里不用加this.



尚新途

可以加也可以不加

middle
3楼

图片.pngs什么时候用public什么时候不用,还有_x和_y是double的格式吗

尚新途

public是访问控制符,如果想让你的代码在任何地方都可以调用,就加public.访问控制符后面会有相关的讲解

middle

_x和_y是double的格式吗,还是说这个是什么情况下这么写


尚新途

案例中_x和_y是double数据类型,当调用类型的构造方法时,为其成员变量赋值

*malloc - L
4楼

/*
定义一个Point)类用来表示二维空间中的点(有两个坐标)。要求如下:
可以生成具有特定坐标的点对象。
提供可以计算该距另外一点距离的方法
*/
public class Point {
   double x,y;
   Point(double _x,double _y){
       double x=_x;
       double y=_y;

   }
   public double distance(Point p){
       return Math.sqrt((x-p.x)*(x-p.x)+(y- p.y)*(y- p.y));
   }
   public static void main(String[] args) {
       Point p1=new Point(3.0,4.0);
       Point orgin =new Point(0.0,0.0);
       System.out.println(p1.distance(orgin));
   }
}

image.png




我这个为什么输出的时0,哪里有问题了

微信用户
5楼
getDistance(Point p){

请问下,这个Point 后面为什么是直接加p,前面的语句好像没有定义p

我躺好了
6楼

老师,p1在调用getDistance方法的时候,Math.sqrt()方法也会在栈里面以栈帧形势存在吗?

image.png

尚新途

对的,这个也会以栈帧形势存在

微信用户
7楼

这一步不是很明白,为啥又是p.x和p.y?image.png

尚新途

image.png

?向阳?
8楼

QQ图片20230420210831.jpg

老师 每次当堆中建立对象的时候同时也会执行下面的方法吗

尚新途

不是的,是你建立对象的时候会在内存中开辟这个空间的

刘成
9楼

class Point {

  double x, y;

  public Point(double _x, double _y) {

     x = _x;

y = _y;

  }

  public double getDistance(Point p) {

return Math.sqrt((x - p.x) * (x - p.x) + (y - p.y) * (y - p.y));

}



public static void main(String[ ] args) {

Point p1 = new Point(3.0, 4.0);

Point origin = new Point(0.0, 0.0);

System.out.println(p1.getDistance(origin));

}

}


这行代码Point p1 = new Point(3.0, 4.0);,中的point是这个point类还是这个构造方法

尚新途

这里的Point(3.0,4.0)是调用的Point类里的有参构造方法

沙正恒
10楼

image.png

image.png

输出一行的意思是从p1调用了getDistance这个方法,然后将oigin中的x,y传入这个方法p.X和p.y的意思吗

尚新途

理解很到位,棒棒哒

杨文秀
11楼
p.x和p.y的值是0吗


尚新途

对的,是0

嘎嘎嘎?
12楼

老师我这一节都看得懵懵的,咋办啊TAT!
我还不懂为什么有些是“public static viod main ......”有些是“public double 名称(参数)”请问这些有啥区别?
image.png

尚新途

首先main方法的写法是固定的,你不需要改,其他方法上面加了static,这个方法就会拥有static的特性,该方法会在类加载的时候加载,并且只加载一起,并由所有对象共享该方法,可以通过类名直接调用,其他的和没有static的方法是一样的。

嘎嘎嘎?

main方法和其他方法有啥区别?
没有static会怎样?

尚新途

其实是一样的,只是main方法的写法是固定的,在Java中被标记为程序的入口,main方法没有static就不是main方法了,而是变为普通方法。

刘艺群
13楼
class Point {
  double x, y;
  public Point(double _x, double _y) {
          x = _x;
          y = _y;
      }
      public double getDistance(Point p) {
            return Math.sqrt((x - p.x) * (x - p.x) + (y - p.y) * (y - p.y));
    }

        public static void main(String[ ] args) {
            Point p1 = new Point(3.0, 4.0);
            Point origin = new Point(0.0, 0.0);
                System.out.println(p1.getDistance(origin));
    }
}

我该怎么去理解

class Point,然后后面的Point p1,Point origin?
class Point是定义一个类,那么Point p1是什么意思?Point是作为修饰符还是什么?为什么
在P1前写它?


尚新途

 实例化对象标准格式

类名  对象名(变量名)=new  类名();


小唐
14楼

屏幕截图_20230212_175049.png老师这个为什么错了?

尚新途

image.png

GSY
15楼

image.png

为什么要将_x和_y 依次传到x y中呢?能不能直接将_x _y 写成x y ?

尚新途

image.png

自我检测(5S)