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(200300); //오버로딩:붕어빵에 생크림 넣어준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

+ Recent posts