IT/Java

[JAVA] Node클래스를 이용한 두 점 사이의 중점을 구하는 프로그램

eternitys 2020. 12. 11. 11:03

객체지향의 기본 Node class

 

객체 : 현실세계의 사물

 

클래스로 만들어서 하나의객체 단위로 만들어 인스턴스화를 합니다.

 

즉 현실세계의 사물이 그대로 프로그램안에 녹아들어가 있습니다. 

 

이러한 형태를 객체지향 이라고 할수 있습니다.

 

실세계의 사물을 프로그래밍안에서 표현해서 어떠한 속성들을 클래스단위로 정의된 다양한 클래스들을

 

실제로 활용한다 -> 객체의 개념을 실제 프로그래밍에 접목했다 이것이 객체지향 프로그래밍 입니다.

 

Node class를 생성합니다.

public class Node {

	private int x;
	private int y;

	public int getX() {
		return x;
	}

	public void setX(int x) {
		this.x = x;
	}

	public int getY() {
		return y;
	}

	public void setY(int y) {
		this.y = y;

	}

	public Node(int x, int y) {
		this.x = x;
		this.y = y;
	}

	public Node getCenter(Node other) {
		return new Node((this.x + other.getX()) / 2, (this.y + other.getY()) / 2);
	}
	
}

Main class생성합니다.

public class Main {

	public static void main(String[] args) {

		Node one = new Node (10, 20); // 생성자를 이용해 만들어준다.
		Node two = new Node (30, 40);
		Node result = one.getCenter(two); // one이라는 인스턴스를 실행해 two값을 받아 one과 two의 정중앙에 해당하는 Node를 return해주는데 return해주는값이 result에 담긴다.
		System.out.println("x :" + result.getX() + ", y :" + result.getY());
		// one과 two의 정중앙의 값을 좌표로 표현. Node라는 점이란 특성을가진 클래스를 정의해서 각각의 함수와 변수를 만들어주고 메인 메소드에서는 활용만 하면 된다. 기능을 분리해준다. 
	}
}

 

출력 결과 

 

x :20, y :30