将新歌添加到相册java

时间:2017-12-30 04:36:10

标签: java class object

我正在尝试将一首歌曲添加到第二个专辑类。 但我得到“线程中的异常”主“java.lang.NullPointerException”错误。 我是java的新手,感谢任何帮助。

public class Album {
// class behaviours
private String albumName;
private Song[] songs;
private int totalAlbumLength;
private int numSongs;

// constructor
public Album(String albumName) {
    setAlbumName(albumName);
}


// special setters: adding new song
public void addSong(Song newSong) {
    this.songs[this.numSongs] = newSong;
    this.numSongs++;
}

public void addSong(String songName, String artistName, int minutes, int seconds) {
    Song newSong = new Song(songName, artistName, minutes, seconds);
    addSong(newSong);

}

歌曲课程

public class Song {
// class behaviours
private String songName = "";
private String artistName = "";
private int songLength = 0;

// constructors
public Song(String songName, String artistName, int minutes, int seconds) {
    setSongName(songName);
    setAtristName(artistName);
    setSongLength(minutes, seconds);
}

public Song(String songName, String artistName, int seconds) {
    setSongName(songName);
    setAtristName(artistName);
    setSongLength(seconds);
}

1 个答案:

答案 0 :(得分:1)

您从未初始化数组private Song[] songs;。 像private Song[] songs = new Song[size];

一样初始化它

如果您不确定使用ArrayList<Song>

的元素数量