본문 바로가기
자바 Java

main method가 있는 class와 object를 생성하는 class와의 관계

by MEHAVING 2019. 10. 2.
반응형

main method가 있는 class와 object를 생성하는 class와의 관계

 

 

main method가 있는 StudentTest.java

import java.util.Scanner;

//실행 
class StudentTest{
	public static void main(String[] args) {
		System.out.print("이름, 학과, 학번 정보를 입력(스페이스로 구분) >>");
		//사용자로부터 입력 받기 위해 Scanner 객체 사용
		Scanner sc = new Scanner(System.in);
		// kwanwoo 객체 생성과 동시에 사용자로부터 학생 정보 받음
		Student kwanwoo = new Student(sc.next(), sc.next(), sc.nextInt());
		// kwanwoo 메서드 시행, 정보출력
		kwanwoo.print();
	}
}

 

object를 생성하는 Student.java 

import java.util.Scanner;

//Student 클래스 
public class Student {
	String name, department;
	int id;
	
	//Student 생성자 
	Student(String name, String department, int id){
		this.name = name;
		this.department = department;
		this.id = id;
	}
	
	// 출력 메서드
	void print() {
		System.out.print("학생정보 (이름: "+this.name+", 학과: "+this.department+", 학번:"+id+")");
	}
}

 

main method가 있는 class는 지금까지 프로그램을 수행하기 위해 필수적으로 꼭 있어야하는 class이며, 프로그램이 시작되는 class이다. 

Student class는 기억장소를 memory내에 할당하여 여러 계산을 하기 위한 class이다. 앞으로 main method에서 Student class를 이용하여 기억장소를 만들 것이다. 

그러므로 두 class는 아무 연관관계가 없다.

 

ex) 자동차 설계도면은 스스로 차를 만들 수 없으니 Student class는 Student object를 만들 수 없다. 자동차 공장(main method)에서 설계도면(Student class)대로 자동차를 만들 듯 main method에서는 Student class를 기준으로 Student object를 만드는 역할을 한다.

 

즉, 공장(main method)에서 run을 돌려야 설계도면(Student class)을 보며 객체(물건)을 만들 수 있다!

반응형

댓글