1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | package com.test; public class Constructor { public static void main(String[] args) { //생성자 // -> 객체(객체 멤버 변수)를 초기화하는 역할 //3. Size 인스턴스 Size s1 = new Size(); s1.check(); //5. Size s2 = new Size(200, 300); //오버로딩:붕어빵에 생크림 넣어준st., s2.check(); Size s3 = new Size(500); s3.check(); //Test t1 = new Test(); x 안됨 Test t2 = new Test(5); } } //사이즈 클래스 class Size { private int width; //너비 private int height; //높이 //private 멤버 변수를 (값을 넣기 위해)접근할 수 있는 방법 //1. 생성자 // - 객체 생성 시 1회 // - 재호출 불가능 //2. setter // - 초기화 역할 병행 // - 수시로 객체의 상태를 변경 //ex)1. 생성자 연습 //기본 생성자 -> 모든 객체가 동일한 상태로 초기화가 된다. public Size() { this.width = 100; this.height = 100; } //4. 생성자 오버로딩 // - 오버로딩 : 메소드명을 동일하게 생성하는 기술(인자리스트 달리해서.,) // - 생성자도 메소드 // - 객체의 초기화를 다양하게 지원하기 위해서 만드는 것(****) public Size(int width, int height) { this.width = width; this.height = height; } //6.오버로딩 더하기 : 너비는 설정하고 높이는 기본값으로 하고싶다., public Size(int width) { this.width = width; this.height = 100; } //2. 확인용 메서드 public void check() { System.out.printf("width:%d, height:%d\n" ,this.width ,this.height); } } //생성자 주의사항 class Test { private int a; //생성자가 1개도 없으면., 자동으로 기본 생성자를 만들어 준다. //생성자가 1개 이상이 있으면., 기본 생성자를 안만들어 준다. public Test(int a) { this.a = a; } //되도록 기본 생성자는 항상 만들어줘라! (권장) public Test() { this.a = 10; } } | cs |
'WEB > JAVA' 카테고리의 다른 글
INHERITANCE(상속) (0) | 2015.05.22 |
---|---|
CONSTRUCTOR(생성자)3 (0) | 2015.05.22 |
CONSTRUCTOR(생성자)1 (0) | 2015.05.22 |
STATIC(정적)2 (0) | 2015.05.22 |
STATIC(정적)1 (0) | 2015.05.22 |