day05 - 생성자

JTH·2023년 1월 27일
0

gb_jth

목록 보기
12/56

4. 클래스, 메서드, 상수의 이름 규칙

4-1. 공통 이름 규칙

  • 영어 + 숫자 + 언더바(_) 의 조합이고, 첫 글자는 반드시 영어로 표시

4-2. 클래스 이름 규칙

  • 첫 글자는 대문자로 시작, 나머지 글자는 소문자로 표시한다.
  • 두 개 이상의 단어를 조합해야 할 경우 새로운 단어는 대문자로 시작한다.
	class Member
	class MyClass
	class NetworkHelper

4-3. 메서드, 변수이름 규칙

  • 대부분 소문자로 구성되지만, 두 대 이상의 단어를 조합할 경우 새로운 단어는 대문자로 표시한다.
	int age
	String userName
	String member_count

4-4. 상수

  • 모두 대문자로 표시
	final double PI;
	final int COLOR;

5. 생성자

5-1. 생성자란 ?

  • new 키워드를 사용하여 객체가 생성될 때 자동으로 실행되는 특수한 형태의 메서드
  • 리턴형을 명시하지 않으며, 메서드의 이름은 클래스와 동일하다.
  • 자동으로 실행된다는 특성 때문에, 객체가 생성되면서 해당 객체의 특성을 초기화 하기위하여 사용된다.
  • 멤버변수의 초기값을 할당하는 용도
	class User{
		User(){		//2. 생성자로 인해 자동으로 자바컴파일러가 만들어 주는 기본생성자
			...
		}
	}

	User user = new User(); // 1. User 라는 생성자가 있다면

5-2 기본생성자

  • 파라미터가 없는 생성자
  • 클래스에 특별히 생성자가 정의되지않은 경우 Java 컴파일러는 다음과 같은 기본 생성자가 존재한다고 인식한다.
	class User{
		User(){		//2. 생성자로 인해 자동으로 자바컴파일러가 만들어 주는 기본생성자
			...
		}
	}

	User user = new User(); // 1. User 라는 생성자가 있다면

5-3. 파라미터를 갖는 생성자

  • 생성자도 메서드의 한 종류이므로 파라미터를 함게 정의하는 것이 가능하다.
  • 생성자의 파라미터를 멤버변수에 복사하는 것으로 객체의 초기화를 외부적인 요인에 의해서 처리할 수 있다.
package Class;

class Article{   // Article 이라는 생성자
	int seq;			// 글 번호
	String subject;		// 글 제목
	String writer;		// 작성자
	
	Article(int seq, String subject, String writer){ //Article(파라미터가 3가지 생성되어있는) 이라는 생성자에 할당시킴
		this.seq = seq;
		this.subject = subject;
		this.writer = writer;
		
	}
	
	void print() {  	//객체 세팅
		System.out.println(this.seq);
		System.out.println(this.subject);
		System.out.println(this.writer);
		
	}
	 
	
}

public class Main08 {

	public static void main(String[] args) {
		Article article1 = new Article(1, "자바연습", "자바학생"); // 객체 생성
		article1.print();
		
		System.out.println("---------------------------");
		
		Article article2 = new Article(2, "자바는 객체지향 언어이다.", "자바학생2");
		
		article2.print();
				
		
	}

}
profile
//

0개의 댓글