WEB/Java

[JAVA] 객체지향입문- 생성자(Constructor)

서연연연 2023. 1. 21. 16:48
package ch01;


public class Student {
	public int studentNumber;
	public String studentName;
	public int grade;
	
	public Student() {
		//client code에서 default생성자를 사용하고 싶을 때 따로 생성해주기
	}
	public Student(int studentNumber, String studentName) {
		//매개변수로 정보를 받아 생성자에서 초기화 시키고자 할 때
		
		//가장 가까운 곳에서 변수를 받아오기 때문에 매개변수에 매개변수를 대입하는 꼴이 됨
		studentNumber= studentNumber;
		// 하지만 원하는 건 매개변수를 멤버변수에 대입하는 것
		// this를 사용해 멤버변수임을 지정해주기
		this.studentNumber=studentNumber;
		this.grade=grade;
		this.studentName=studentName;
		
		//생성자는 객체가 생성될떄 실행되는 함수
		System.out.println("student 생성");
	}
	public String showStudentInfo() {
		
		return studentName+"학생의 학번은 "+studentNumber+", "+grade+"학년입니다.";
	}
	
	}
package ch01;

public class StudentTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
			Student StudentLee= new Student();
			
			System.out.println(StudentLee.showStudentInfo());
			
			Student studentKim = new Student(123456,"kim");
			System.out.println(studentKim.showStudentInfo());
	}

}