1. class
1) 분류라는 의미의 Classification에서 왔다.
2) Data와 Functions을 가지고있는 데이터 구조(Data structure)이다.
2. object
1) 속성(property, state, attribute) : variable constants
2) 행위(behavior) : method
public class ConstructorDemo2 { public static void main(String[] args) { Person1 p = new Person1("김태형", 27, 100.0); Person1 p1 = new Person1("마이클", 28); } } public class Person1 { private String name; private int age; private double salary; public Person1(String name, int age, double salary){ // 기본 생성자의 오버라이딩. this.name = name; this.age = age; this.salary = salary; } public Person1(String name, int age){ // 오버로딩 this.name = name; this.age = age; } } |
기본 생성자의 경우는 오버라이딩(Overriding)과 오버로딩(Overloading) 모두 다 필요할 때가 있다.
|
4) this메소드
- 생성자 내부에서 생성자를 호출 할 때 사용하는 것으로, this메소드는 생성자 안에서만 사용해야하며 블록의 첫줄에 써야한다.
public class Person2 { private String name; private int age; public Person2(){ //System.out.println("나 기본생성자."); this("unknown",19); } public Person2(String name){this(name,19);} public Person2(int age){this("unknown",age);} public Person2(String name, int age){ this.name = name; this.age = age; } publi void main(String[] args){ Person2 p = new Person2(); } } |
생성자 내에서 생성을 하면 또다른 주소가 생성되기 때문에 사용 할 수 없다. 그래서 this메소드를 사용한다. ex)
|
for (int i = 0; i < this.array.length; i++) { String line = this.scan.nextLine().trim(); String [] array = line.split("\\s+"); //+는 1번 스페이스가 1개 이상이면 짜른다. ?는 0또는 1개, *는 0번 또는 1번이상(모두) |
'Programming > JAVA' 카테고리의 다른 글
자바 객체지향의 특징3 (다형성,Overriding) (0) | 2011.03.24 |
---|---|
자바 객체지향의 특징2 (상속화) (1) | 2011.03.24 |
자바 메소드(method) (3) | 2011.03.24 |
자바 배열이란? (2) | 2011.03.24 |
자바 제어문(조건/반복/분기) (2) | 2011.03.24 |