728x90
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | package sec1; //멤버 변수 선언 public class student1 { String name; int money; //매개변수를 가지는 생성자 public student1(String name, int money) { this.name = name; this.money = money; } //takebus 메소드 public void takebus(takeBus bus) { bus.take(1000); this.money -= 1000; } //takesubway 메소드 public void takeSubway(takeSubway subway) { subway.take(1000); this.money -= 1500; } //showInfo 메소드 public void showInfo() { System.out.println(name + "님의 남은 돈은" + money + "입니다"); } } package sec1; //takebus 클래스 //멤버 변수 선언 public class takeBus { int busNum; int passengerCount = 0; int money; //버스번호 매개변수를 가지는 생성자 public takeBus(int busNum) { this.busNum = busNum; } //돈을 매개변수로 가지는 생성자 public void take(int money) { this.money += money; passengerCount++; } //showInfo 메서드 이떄 static쓰면 안됨 public void showInfo() { System.out.printf("%d 버스의 수입은 %d 손님수는 %d 입니다", this.busNum, this.money, passengerCount); } } //지하철 클래스 주석은 버스와 동일 package sec1; public class takeSubway { String lineNumber; int passengerCount = 0; int money; public takeSubway(String lineNumber) { this.lineNumber = lineNumber; } public void take(int money) { this.money += money; passengerCount++; } public void showInfo() { System.out.printf("%s지하철의 수입은 %d 손님수는 %d 입니다", this.lineNumber, this.money, passengerCount); } } //버스타는 클래스 package sec1; public class TakeTrans { public static void main(String[] args) { student1 studentJames = new student1("James", 5000); //생성자로 학생 생성 student1 studentSienna = new student1("Sienna", 4000); takeBus bus100 = new takeBus(100); //생성자로 busNum 선언 studentJames.takebus(bus100);//James가 버스를 탐 studentJames.showInfo(); bus100.showInfo(); takeSubway subwayred = new takeSubway("red"); studentSienna.takeSubway(subwayred); studentSienna.showInfo(); subwayred.showInfo(); } } | cs |
728x90
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
[JAVA] immutable 객체?방어적 복사? (1) | 2022.11.15 |
---|---|
JAVA - 스트림 가공하기 (0) | 2022.10.06 |
JAVA - 스트림 생성하기 (0) | 2022.10.06 |