본문 바로가기

Programming language/Java

(28)
Java - 실무6 [블랙잭] Card.java - 카드 클래스이다. public class Card { // 상수들, 바뀔 필요가 없기에 final로 정의하였고 getter, setter 함수가 없어도 된다. (상수기 떄문에) public final int suitNumber; public final int rankNumber; // 생성자 인수 : 카드 종류, 카드 랭크 public Card(int suitNumber, int rankNumber) { this.suitNumber = suitNumber; this.rankNumber = rankNumber; } // suitNumber의 getter // 현재카드의 suitNumber를 문자열출력의 모양으로 바꾼다. public String getSuit() { String sui..
Java - 11 [Random , Collections] Random class - 여러형태의 난수를 생성할 때 필요하다. public class RandomExample { public static void main(String[] args) { System.out.println("0.0 ~ 1.0 사이의 난수 1개 발생 : " + Math.random()); System.out.println("0 ~ 10 사이의 난수 1개 발생 : " + (int)((Math.random()*10000)%10)); System.out.println("0 ~ 100 사이의 난수 1개 발생 : " + (int)(Math.random()*100)); } } 위 코드를 보면 기본적으로 Math.random() 함수는 0.0에서 1.0사이의 난수를 발생 시킨다. setSeed(lo..
Java - 10 [protected 접근제어자, Object 클래스] protected 키워드 - private로 정의된 변수들은 해당클래스 내에서만 부를수 있다. - 즉, 상속된 자식클래스들도 접근을 못한다는 소리다. 하지만 protected키워드는 이러한 접근을 가능하게 한다. 오직 자신과 자식키워드에게만 허용된 변수를 설정할 수있다. public class BankAccount { private int balance; ... } public class MinimumBalanceAccount extends BankAccount { ... @Override public boolean withdraw(int amount) { if (getBalance() - amount < minimum) { System.out.println("적어도 " + minimum + "원은 남겨..
Java - 9 [상속, super] 상속 - 상속이란 기존의 클래스를 모두 받고 이어서 확장시켜 새로운 클래스를 정의하는 개념이다. - 자동차라는 클래스가 있다면 트럭이라는 클래스는 자동차라는 클래스를 상속받아 확장한 클래스이다. 이때 상속받은 클래스는 자식클래스 모태가 되는 클래스는 부모클래스 라고 한다. public class BankAccount { private int balance; public int getBalance() { return balance; } public void setBalance(int balance) { this.balance = balance; } // 출금 public boolean withdraw(int amount) { if (balance >= amount) { balance -= amount; r..
Java - 실무5 [MP3플레이어] Artist.java - 아티스트는 여러 앨범을 갖고 있다, - Album ArrayList가 있어야한다. import java.util.ArrayList; //Artist는 여러 앨범을 가지고 있고 앨범들은 여러 곡들을 가지고 있다. public class Artist { private String artistName; // 여러 앨범들을 가지는 ArrayList ArrayList albums = new ArrayList(); // 생성자 인수 : artistName public Artist(String artistName){ this.artistName = artistName; } // 앨범 추가 메소드 public void addAlbum(Album album){ albums.add(album); ..
Java - 실무4 [학점계산기] public class Main { public static void main(String[] args) { GradeCalculator gradeCalc = new GradeCalculator("김신의", 4.0, 100); gradeCalc.addCourse(new Course("OOP", Course.CREDIT_MAJOR, "A+")); gradeCalc.addCourse(new Course("신호와시스템", Course.CREDIT_MAJOR, "A")); gradeCalc.addCourse(new Course("해석학", Course.CREDIT_MAJOR, "B+")); gradeCalc.addCourse(new Course("확률", Course.CREDIT_MAJOR, "A+")); gr..
Java - 실무3 [영화관] Theater.java - 행과 열을 인수로 받아 이중 Seat 배열을 가진다. - 좌석을 예약하거나 취소한다 - 예약된 좌석을 보여준다. public class Theater { private Seat[][] seats; private int rowCount, colCount; // Theater 생성자 : 행, 열 인수. public Theater(int rowCount, int colCount) { // 행은 알파벳의 26자리를 넘어가지 못한다. if (rowCount > 26) { rowCount = 26; // number of alphabets } // 영화관의 시트 이중 배열을 생성한다. seats = new Seat[rowCount][colCount]; // 해당 시트자리마다 시트객체를 생..
Java - 실무2 [포켓몬 도감] Pokemon.java - 포켓몬 클래스이다. - 이름과 전투력을 지정할 수 있다. public class Pokemon { public final String name; public final int cp; // 포켓몬 생성자 인수 : 이름, 전투력 public Pokemon(String name, int cp) { this.name = name; this.cp = cp; } // String에서 toString이라는 원래 있는 메소드를 오버라이드 @Override public String toString() { return name + "(" + cp + ")"; } } PokeBag.java - 포켓몬을 저장하는 가방의 개념으로 - 같은 종류의 포켓몬을 저장하는 리스트를 만들고 그러한 여러종류의 포..