본문 바로가기

프로그래밍/Java

[Java] - 클래스 제작과 객체 생성

728x90
반응형

실전 자바 강좌 (ver.2018) - 초보부터 개발자 취업까지!! 강의를

개인공부하며 정리하는 용도의 포스팅입니다.

 

학습목표


  • 클래스를 만들고 클래스로부터 객체를 생성하는 방법에 대해서 학습

클래스 제작


클래스는 멤버 변수(속성), 메서드(기능), 생성자 등으로 구성된다

 

package lec11Pjt001; 

// 클래스 이름: 일반적으로 첫글자는 대문자로 한다 
public class Grandeur { 

  // 멤버 변수(속성) 
  public String color; 
  public String gear; 
  public int price; 

  // 생성자 
  public Grandeur() { 
    System.out.println("Grandeur constructor"); 
  } 

  // 메서드(기능) 
  public void run() { 
    System.out.println("-- run --"); 
  } 

  // 메서드(기능) 
  public void stop() { 
    System.out.println("-- stop --"); 
  } 
}


객체 생성


클래스로 부터 ‘new’를 이용해서 객체를 생성한다.

Grandeur myCar1 = new Grandeur(); 
myCar1.color = "red"; 
myCar1.gear = "auto"; 
myCar1.price = 30000000; 

myCar1.run(); 
myCar1.stop(); 
myCar1.info(); 

System.out.println(); 

Grandeur myCar2 = new Grandeur(); 
myCar2.color = "blue"; 
myCar2.gear = "manual"; 
myCar2.price = 25000000; 

myCar2.run(); 
myCar2.stop(); 
myCar2.info();

 


결과

Grandeur constructor 
-- run -- 
-- stop -- 
-- info -- 
color : red 
gear : auto 
price : 30000000 

Grandeur constructor 
-- run -- 
-- stop -- 
-- info -- 
color : blue 
gear : manual 
price : 25000000

 

 

생성자


클래스에서 객체를 생성할 때 가장 먼저 호출된다.

public class Bicycle { 
  String color; 
  int price; 
  
  // 생성자 
  public Bicycle() { 
    System.out.println("Bicycle constructor - I"); 
  } 

  // 생성자 
  public Bicycle(String c, int p) { 
    System.out.println("Bicycle constructor - II"); 

    color = c; 
    price = p; 
  } 

  public void info() { 
    System.out.println("-- info --"); 
    System.out.println("color : " + color); 
    System.out.println("price : " + price); 
  } 
}
Bicycle myBicycle1 = new Bicycle(); 
myBicycle1.info(); 

Bicycle myBicycle2 = new Bicycle("red", 100000); 
myBicycle2.info();


결과

Bicycle constructor - I 
-- info -- 
color : null 
price : 0 

Bicycle constructor - II 
-- info -- 
color : red 
price : 100000

 

Reference


실전 자바 강좌 (ver.2018) - 클래스 제작과 객체 생성

728x90
반응형

'프로그래밍 > Java' 카테고리의 다른 글

[Java] - 객체와 메모리  (0) 2020.12.18
[Java] - 메서드  (0) 2020.12.18
[Java] - 객체지향 프로그램이란  (0) 2020.12.17
[Java] - 반복문  (0) 2020.12.17
[Java] - 조건문  (0) 2020.12.17