백엔드 3일차 - 자바 메소드, 클래스

parang·2025년 4월 10일

LG CNS AM Inspire Camp 2기

목록 보기
14/50
post-thumbnail

2일차 포스팅 맨 처음에 메소드와 클래스에 대한 개념을 정리해 놓았는데, 오늘 주제가 메소드와 클래스였다 ㅋㅋ 더 자세히 정리해보자.

메소드

  1. 메소드는 간단히 말해 기능 역할을 한다. 어떤 주문을 하면, 결과를 반환한다.
  2. 메소드는 보통 한가지 기능만 가지는 것이 좋다.
  3. 메소드는 리턴값과 매개변수가 필요한데, 없는 경우도 존재한다.

메소드 형태

public static void abc(int a) { return b,c; }

public static void main(String[ ] args) {
   abc(1000) 
}
-> 1000을 인자라고 함. ,  1000은 int.

외부 라이브러리 사용법

  1. 도구(.jar) 다운로드
  2. 작업 프로젝트로 jar파일 가져오기
  3. import
  4. new 객체 사용해서 사용!

예시 코드

 String[] names = { "a", "b", "c"};
        ObjectMapper om = new ObjectMapper(); // 외부에서 가져온 json으로 변환하는 도구
        String json = om.writeValueAsString(names);
        System.out.println(json);

void 타입

void 타입이란 반환값이 없는 경우를 말한다. 주로 유효성 검사 메소드에 많이 사용된다.

호출방법

  1. 클래스 내부 : 그대로 호출
  2. 클래스 외부 : 클래스 객체 생성 후 호출
A 클래스의 run()을 가져오고 싶다고 하자.
A a = new A();
a.run(); 
이때 a는 참조 변수. 

오버 로딩

정의 : 동일한 이름의 메소드.
구분 : 매개변수의 종류, 개수, 순서 중 하나라도 무조건 달라야 함.

클래스(객체)

자바는 대표적인 객체 지향 프로그래밍이다. 여기서 객체란, 속성과 동작으로 구성된다.

클래스를 사용하려면 일단, 생성자(클래스 객체)를 만들어야 한다.

객체간의 관계

집합, 사용, 상속.

<머신 클래스>
public calss Machine{ 
	pubilc void start();
    public void stop();
}

<Car 클래스>

public class Car extends Machine { //머신 상속
	private Engine engine;
    private Tire tire;
    
    public Car() { 
    engine = new Engine();
    tire = new Tire();
    }
    
    public void drive() {
    	engine.run(); -> 엔진 클래스의 run기능 //집합
        tire.roll(); -> 타이어 클래스의 roll기능 //집합
      	System.out.println("자동차");
        }
}

<Person 클래스> // 자동차 객체 사용
public class Person {
  private String name; //속성

  public Person(String name) { //기능
    this.name = name;
  }

  public void driveCar() {
    Car car = new Car(); //외부 클래스 사용
    car.start();     // Machine에서 상속된 메서드
    car.drive();     // Car의 메서드
    car.stop();       // Machine에서 상속된 메서드
  }
}
이런식으로 상호작용이 가능하다.

이렇게 복잡해 보이는 클래스 들을 사용하는 이유는, 향후 규모가 커질때 훨씬 코드의 유지 보수가 쉬워지고 중구난방으로 데이터들이 흩어지지 않게 되어 관리하기에 좋기 때문이다.

profile
파랑입니다.

0개의 댓글