프로그래밍 언어/JAVA

<Java> 자바의 정석 6장 7번 (인스턴스메서드 작성)

창조적생각 2021. 7. 4. 14:05

문제 6-6에서 작성한 클래스메서드 getDistance()를 Mypoint 클래스의 인스턴스메서드로 정의하시오.

 

class Mypoint{
int x;
int y;
Mypoint(int x, int y){
this.x = x;
this.y = y;
}

/*

(1) 인스턴스메서드 getDistance를 작성하시오.

*/

}

public class Exercise6_7 {

public static void main(String[] args) {
// TODO Auto-generated method stub
Mypoint p = new Mypoint(1,1); 

System.out.println(p.getDistance(2,2));
}

}

 

[실행결과]

1.4142135

 

[풀이]

class Mypoint{
int x;
int y;
Mypoint(int x, int y){
this.x = x;
this.y = y;
}

1
2
public float getDistance(int x1, int y1) {
        return (float) Math.sqrt((this.x - x1)*(this.x - x1)+(this.y - y1)*(this.y - y1));
cs

/*이미 x와 y의 값은 Mypoint 클래스에서 지정해두었습니다.

그렇기에 x1,y1의 값만 넣고 return 값으로 x,y,x1,y1을 연산하도록 설정했습니다.*/

 

public class Exercise6_7 {

public static void main(String[] args) {
// TODO Auto-generated method stub
Mypoint p = new Mypoint(1,1); 

System.out.println(p.getDistance(2,2));
}

}

728x90