19.04.06 Class(필드, 생성자 오버로딩)
Back-End/Java 2019. 4. 6. 18:42-Field-
필드는 객체의 고유데이터, 상태 정보를 저장하는 곳.
필드는 생성자와 메소드 전체에서 사용되며 객체가 소멸되지 않는 한 객체와 함께 존재한다.
-예제 및 출력결과-
1
2
3
4
5
6
7
8
9
10
11 |
package chap4_field;
public class Car {
// 필드 생성 (멤버변수)
String company = "현대자동차";
String model = "그랜저";
String color = "검정";
int maxSpeed = 350;
int speed;
} |
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 |
package chap4_field;
public class CarExample {
public static void main(String[] args) {
Car myCar = new Car(); //new 키워드를 사용해서 car객체를 만들고 변수 mycar가 참조하게 한다
//필드값 읽기
System.out.println("제작회사: "+myCar.company);
System.out.println("모델명: "+myCar.model);
System.out.println("색깔: "+myCar.color);
System.out.println("최고속도: "+myCar.maxSpeed);
System.out.println("현재속도: "+myCar.speed);
//필드값 변경
myCar.speed = 60;
System.out.println("수정된 속도: "+myCar.speed);
}
}
|
cs |
-출처-
https://programmers.co.kr/learn/courses/5/lessons/140
-생성자-
생성자의 역할은 객체 생성 시 초기화를 담당.
클래스 이름으로 되어 있고 리턴 타입이 없다.
-생성자 오버로딩-
매개 변수를 달리하는 생성자를 여러개 선언하는 것.
-예제 및 출력결과-
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 |
package chap4_field;
public class CarOverloading {
//필드선언
String company = "현대자동차";
String model;
String color;
int maxSpeed;
//기본 생성자
CarOverloading()
{
}
CarOverloading(String model)
{
this.model = model; //this를 써서 필드이름과 변수를 구분해 준다.
}
CarOverloading(String model, String color)
{
this.model = model;
this.color = color;
}
CarOverloading(String model, String color, int maxSpeed)
{
this.model = model;
this.color = color;
this.maxSpeed = maxSpeed;
}
}
|
cs |
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 |
package chap4_field;
public class CarExampleOverloading {
public static void main(String[] args) {
CarOverloading car1 = new CarOverloading(); //company 필드에 현대자동차라는 값이 있기 때문에 그 값을 참조해서 출력한다.
System.out.println("car1.company: " +car1.company);
System.out.println();
CarOverloading car2 = new CarOverloading("자가용");
System.out.println("car2.company: " +car2.company);
System.out.println("car2.model: " +car2.model);
System.out.println();
CarOverloading car3 = new CarOverloading("자가용","빨강");
System.out.println("car3.company: " +car3.company);
System.out.println("car3.model: " +car3.model);
System.out.println("car3.color: " +car3.color);
System.out.println();
CarOverloading car4 = new CarOverloading("택시","검정",200);
System.out.println("car4.company: " +car4.company);
System.out.println("car4.model: " +car4.model);
System.out.println("car4.color: " +car4.color);
System.out.println("car4.maxSpeed: " +car4.maxSpeed);
}
}
|
cs |
-출처-
'Back-End > Java' 카테고리의 다른 글
19.04.09 상속, final (0) | 2019.04.09 |
---|---|
19.04.08 어노테이션,Getter / Setter 메소드 (0) | 2019.04.08 |
19.04.05 다차원 배열, 향상된 for문 (0) | 2019.04.05 |
19.04.04 random, Scanner (0) | 2019.04.04 |
19.04.03 예외처리, Integer, eqals() (0) | 2019.04.03 |