Struttura della classe Tunes: istanzia un nuovo oggetto

Struttura della classe Tunes: istanzia un nuovo oggetto CDCollection e
inserisce dati
import CDCollection;
public class Tunes
public static void main (String[] args){
CDCollection music = new CDCollection ();
music.addCD ( ... );
Classe CDCollection: rappresenta la collezione di CD come array di CD di
lunghezza pari alla variabile di classe, che istanzia a ogni nuova creazione di
collezione
import CD;
import java.text.NumberFormat;
public class CDCollection {
private CD[] collection;
//array di oggetti CD
private int count;
private double totalValue;
private int currentSize;
// non è definito costante perché increaseSize la raddoppia
public CDCollection ()
// istanzia l'array di CD e setta le variabili di classe
public void addCD
(String title, String artist, double value, int tracks)
public String toString()
private void increaseSize ()
// definita private perché è un metodo ausiliario
}
La classe CD rappresenta l'oggetto CD singolo
import java.text.NumberFormat;
public class CD {
private String title, artist;
private double value;
private int tracks;
public CD
(String theTitle, String theArtist, double theValue, int
theTracks)
public String toString()
}
Nuova versione con una funzione di ordinamento della collezione,
ottenuto implementando l’interfaccia Comparable nella classe
SortableCD
import SortedCDCollection;
public class SortedTunes
public static void main (String[] args){
SortedCDCollection music = new SortedCDCollection();
music.addCD ( ... );
import SortableCD;
// la classe per generare CD singoli
import Sorts;
// la classe generale per ordinare oggetti
import java.text.NumberFormat;
public class SortedCDCollection {
private SortableCD[] collection;
private int count;
private double totalValue;
private int currentSize;
public SortedCDCollection ()
public void addCD
(String title, String artist, double value, int tracks)
public String toString()
private void sortCDs()
// ordina gli elementi della collezione
private void increaseSize ()
import java.text.NumberFormat;
public class SortableCD implements Comparable {
private String title, artist;
private double value;
private int tracks;
public SortableCD
(String theTitle, String theArtist, double theValue, int
theTracks)
public
public
public
public
String toString()
int compareTo (Object obj)
String getTitle()
String getArtist()
public class Sorts
public static void selectionSort (int[] numbers)
public static void insertionSort (int[] numbers)
public static void insertionSort
(Comparable[] objects)
// overloading del metodo per ordinare un array di oggetti che
// implementano l'interfaccia Comparable