Eggs Sunny Side Up
본문 바로가기
언어/JAVA

객체지향 프로그래밍(Object Oriented Programming)

by guswn100059 2023. 3. 7.

예제1) 구조 이해

Class생성

Field(데이터, 속성) & Method(기능, 로직, 행위) 선언

public class Class {
	
	// 설계도
	
	//1. Field(데이터, 속성)
	// 이름, 나이, 성별
	
	String name;
	int age;
	char gender;
	
	
	//2. Method(기능, 로직, 행위)
	// 먹다, 말하다
	
	public void eat() {
		System.out.println("먹다");
	}
	
	public void talk() {
		System.out.println("말하다");
	}

}

Main 생성

public class Main {

	public static void main(String[] args) {
		
		//실행공간
		
		//Class 설계도를 토대로 객체 설정
		//클래스의 instance화
		
		//객체 생성
		Class me = new Class();
		
		//객체 데이터(Field)에 접근하는 방법
		me.name = "Ironman";
		System.out.println(me.name);
		
		me.age = 100;
		System.out.println(me.age);
		
		me.gender = 'M';
		System.out.println(me.gender);
		
		System.out.println();
		
		//하나의 클래스로 여러 개의 객체 생성 가능!
		Class you = new Class();
		
		you.name = "you";
		System.out.println(you.name);
		
		you.age = 54;
		System.out.println(you.age);
		
		you.gender = 'W';
		System.out.println(you.gender);

	}

}

 

예제2) 은행

Class  생성

public class Class {
	
	// 설계도
	
	//1. Field(데이터, 속성)
	// 이름, 나이, 성별
	
	int money;
	
	
	//2. Method(기능, 로직, 행위)
	public void deposit(int num) {
		money += num;
	}
	
	public void withdraw(int num) {
		money -= num;
	}
	
	public void showMoney() {
		System.out.println("총 금액 : "+money+"원");
	}

}

Main 생성

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		//실행공간
		
		Scanner sc = new Scanner(System.in); 
		
		//Class 설계도를 토대로 객체 설정
		//클래스의 instance화
		
		//객체 생성
		Class a = new Class();
		
		//객체 데이터(Field)에 접근하는 방법
		a.money = 1000;
		
		System.out.print("입금할 금액 >> ");
		int input = sc.nextInt();
		a.deposit(input);
		a.showMoney();
		
		System.out.print("출금할 금액 >> ");
		int output = sc.nextInt();
		a.withdraw(output);
		a.showMoney();
		

	}

}

댓글