public class Library {
private Collection<Book> books = new ArrayList<Book>();
public void addBook(Book book) {
books.add(book);
}
public void removeBook(Book book) {
books.remove(book);
}
}
Code Block
language
java
public class Library implements Iterable<Book> {
... books-feltet og add- og remove-metodene her ...
// fra Iterable<Book>
public Iterator<Book> iterator() {
return books.iterator();
}
}
PlantUML Macro
interface "Iterable<Book>" as iterable {
Iterator<Book> iterator()
}
class Library
class Book
iterable <|.. Library
Library "1" *.right. "n" Book: books
Code Block
// lag en Library-instans
Library library = new Library();
// legg til noen bøker
library.addBook(new Book(...));
library.addBook(new Book(...));
// gå gjennom bøkene
for (Book book : library) {
// gjør noe med book her
...
}