Programming language/Java
Java - 실무5 [MP3플레이어]
뚜드림
2020. 10. 18. 21:26
Artist.java
- 아티스트는 여러 앨범을 갖고 있다,
- Album ArrayList가 있어야한다.
import java.util.ArrayList;
//Artist는 여러 앨범을 가지고 있고 앨범들은 여러 곡들을 가지고 있다.
public class Artist {
private String artistName;
// 여러 앨범들을 가지는 ArrayList
ArrayList<Album> albums = new ArrayList<>();
// 생성자 인수 : artistName
public Artist(String artistName){
this.artistName = artistName;
}
// 앨범 추가 메소드
public void addAlbum(Album album){
albums.add(album);
}
// 앨범 getter
public ArrayList<Album> getAlbums(){
return this.albums;
}
// 앨범 이름 getter
public String getArtistName(){
return this.artistName;
}
}
Album.java
- 앨범은 여러 곡들을 갖고 있다.
- Song ArrayList가 있어야한다.
import java.util.ArrayList;
// 아티스트는 여러 앨범들을 갖고 앨범들은 여러 곡들을 가진다.
public class Album {
private String albumName;
private int madeyear;
private Artist artist;
// 여러곡을 가지는 Song ArrayList
ArrayList<Song> songs = new ArrayList<>();
// 생성자 인수 : albumName, madeYear, artist
public Album(String albumName, int madeYear, Artist artist){
this.albumName = albumName;
this.madeyear = madeYear;
this.artist = artist;
}
// 곡 추가 메소드
public void addTrack (Song song){
songs.add(song);
}
// Track getter : 인수로 인덱스를 받아 songs 리스트의 곡을 반환
public Song getTrack (int index){
return this.songs.get(index - 1);
}
// madeYear getter
public int getMadeyear(){
return this.madeyear;
}
// albumName getter
public String getAlbumName() {
return this.albumName;
}
}
Song.java
public class Song {
private String songName;
private Artist artist;
private Album album;
// 생성자 인수 : songName, artist, album
public Song (String songName, Artist artist, Album album){
this.songName = songName;
this.artist = artist;
this.album = album;
}
// String toString 오버라이드
@Override
public String toString(){
String answer = this.songName + " - " +this.artist.getArtistName() +"\n"+this.album.getAlbumName()+"("+this.album.getMadeyear()+")";
return answer;
}
}