Java 복습하기

서화진·2022년 8월 19일
0

JAVA 학습일지

목록 보기
9/13

1) 객체지향 프로그래밍에서의 협력

  • 버스타고 학교 가는 학생의 과정을 객체 지향 프로그래밍으로 구현해보기
package ch14;

public class Bus {
	
	
	int busNumber;
	int passengerCount;
	int money;
	
	
	public Bus(int busNumber) {
		this.busNumber = busNumber;
		
	}
	
	public void take(int money) {
		this.money += money;
		passengerCount++;
	}
	
	public void showBusInfo() {
		
		System.out.println(busNumber +" 번 버스의 승객은 " + passengerCount + " 명 이고, 수입은 " + money + "원 입니다.");
	}

}

package ch14;

public class Subway {

	
	int lineNumber;
	int passengerCount;
	int money;
	
	
	public Subway(int lineNumber) {
		this.lineNumber = lineNumber;
	}
	
	public void take(int money) {
		this.money += money;
		passengerCount++;
	}
	
	public void showSubwayInfo() {
		
		System.out.println(lineNumber + "번 지하철 승객은 " + passengerCount + "명 이고, 수입은 " + money + "원 입니다.");
	}
}

package ch14;

public class Student {

	
	String studentName;
	int money;
	
	
	public Student(String studentName, int money) {
		this.studentName = studentName;
		this.money = money;
	}
	
	public void takeBus(Bus bus) {
		bus.take(1000);
		this.money -= 1000;
	}
	
	public void takeSubway(Subway subway) {
		subway.take(1200);
		this.money -= 1200;
	}
	
	public void showStudentInfo() {
		System.out.println(studentName + "님의 남은 돈은 " + money + "원 입니다.");
	}
}

package ch14;

public class TakeTransTest {

	public static void main(String[] args) {

		
		Student studentJ = new Student("James", 5000);
		Student studentT = new Student("Tomas", 10000);
		
		Bus bus100 = new Bus(100);
		Bus bus500 = new Bus(500);
		
		Subway subwayGreen = new Subway(2);
		Subway subwayRed = new Subway(3);
		
		
		studentJ.takeBus(bus100);
		studentT.takeSubway(subwayGreen);
		
		studentJ.showStudentInfo();
		studentT.showStudentInfo();
		
		bus100.showBusInfo();
		subwayGreen.showSubwayInfo();
		bus500.showBusInfo();
		subwayRed.showSubwayInfo();
		
	
	}

}

2)출력값

James님의 남은 돈은 4000원 입니다.
Tomas님의 남은 돈은 8800원 입니다.
100 번 버스의 승객은 1 명 이고, 수입은 1000원 입니다.
2번 지하철 승객은 1명 이고, 수입은 1200원 입니다.
500 번 버스의 승객은 0 명 이고, 수입은 0원 입니다.
3번 지하철 승객은 0명 이고, 수입은 0원 입니다.


profile
초보 개발자 / 학습일지 : https://velog.io/@dinyyyyy

0개의 댓글