Java 기초 (9) 객체지향언어: JAVA

코린이서현이·2023년 7월 18일
0

Java

목록 보기
9/46

🔥오늘의 목표🔥

클래스와 객체 파트를 정리하려고 하는 데 정말 쉽지 않았다...!!! 
하지만 내가 이해한 걸 잘 정리하고 중간중간 이해가 안된 부분이 있으면 잘 포착하길 바라는 마음이다!!

📕객체 지향 언어 : JAVA

📖 절차 지향 프로그래밍 VS 객체 지향 프로그래밍

  • 절차 지향 프로그래밍 : 일어나는 일을 순서대로 프로그래밍한다.
  • 객체 지향 프로그래밍 : 객체를 정의하고 객체 간 협력을 프로그래밍한다.

🔍 자바로 프로그래밍 한다는 것은?

→ 객체를 먼저 정의하고 각 객체가 어떤 기능을 제공하고 객체 간 협력을 어떻게 구현할 것인지를 고민하는 것이다.

🤔객체 간 협력을 구현하는 방법

클래스 메소드내에서 다른 클래스의 메소드를 사용하며 객체 간 협력을 구현 할 수 있다.
이 부분은 추후에 또 나오니까 이런 예시가 있다는 것만 알면 좋을 것 같다.

✍️ 예시코드

class Passenger{
	String name;
	int money;
	
	//돈과 이름을 설정하는 생성자
	public Passenger(String name, int money) {
		this.name = name;
		this.money = money;
	}
	
	void takeBus (Bus name) {
		name.take(1000);
		this.money -= 1000;
	}
}

class Bus{
	String name;
	int money;
	int count;
	
	public Bus(String name) {
		this.name = name;
		this.money = 0;
		this.count = 0;
	}
	void take (int money) {
		this.money += money;
		this.count++;
		System.out.println("Bus : 승객 탑승 완료");
	}
}
public class Take {

	public static void main(String[] args) {
		Passenger seo = new Passenger("서현", 10000);			
		Bus bus100 = new Bus("100");
	
		seo.takeBus(bus100);    				
	}
}

👉 실행코드

//Passenger객체의 메소드를 실행했을 때 Bus의 메소드도 실행되는 것을 확인 할 수 있다.	
Bus : 승객 탑승 완료

📖 예제를 통해 파악하기

  • 앞으로 차근차근 공부할 부분의 흐름을 파악해보자.

✍️ 클래스 선언하기

  • class 예약어와 다양한 접근제어자들 :public,protected,default (아무것도 쓰지않았을 때 ,private을 활용해서 선언할 수 있다.
  • 클래스 메소드에 대해서 배운다.
  class Passenger{
      String name;
      int money;

      void takeBus (Bus name) {
          name.take(1000);
          this.
          money -= 1000;
		}
	}

✍️ 클래스 생성자를 통해 인스턴스 만들기

  • 클래스이름(매개변수)를 통해 인스턴스를 만들 수 있다.
  • 인스턴스와 클래스의 차이점에 대해서 배워야한다.
  • 생성자의 종류에 대해서 배운다.
    생성자는 클래스이름(매개변수)이고 매개변수가 없을 수도 있다.
	Passenger seo = new Passenger("서현", 10000);	

✍️ 인스턴스 변수에 접근하기 (본문예제에는 없음)

  • static예약어를 통해 클래스 변수, 인스턴스 변수의 차이점에 대해 배운다.
	seo.money = 20000;

✍️인스턴스 메소드에 접근하기

	seo.takeBus(bus100); 

🔥마치면서🔥

객체지향언어의 특성과 앞으로 배울 부분에 대해서 간략하게 정리해봤다.
profile
24년도까지 프로젝트 두개를 마치고 25년에는 개발 팀장을 할 수 있는 실력이 되자!

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

훌륭한 글이네요. 감사합니다.

답글 달기