Collections Exceptions Java I/O

Collections Hierarchy

classDiagram
     Iterable --|> Collection
        Collection --|> List
	List --> ArrayList
	List --> LinkedList
	List --> Vector
	List --> Stack
        Collection --|> Set
            Set --> SortedSet
	    SortedSet --> TreeSet
	    Collection --|> Queue

    class Iterable{
	java.util
    }
        class Collection {
		---INTERFACE---

        }
            class Set {
		---INTERFACE---
            }
            class SortedSet {
		---INTERFACE---
            }
	    class TreeSet {
		---CLASS---
            }

        	class List:::interface   {
		.        ----INTERFACE----      .   
		                                          
		- Methods are index-based
		add()
		get()
		set()
		remove()
		clear()
		size()
		}
		class ArrayList {
		.                          ----CLASS----                        . 
		- For storing and accessing data
		- Elements in an ArrayList are objects
		- Cannot use primitives, must use wrapper class
		}
		class Vector {
		---CLASS---
		}
		class Stack {
		---CLASS---
		}
		class LinkedList {
		.                          ----CLASS----                        .
		- Used to manipulate data.
		- Stores items in containers. 
		- The list has a link to the first container and 
		each container has a link to the next 
		container in the list.
		addFirst()
		addLast()
		removeFirst()
		removeLast()
		getFirst()
		getLast()
		}
	

	class Queue {
	---INTERFACE---
	}
	classDiagram
	class Exception {
	}
	

Java I/O Hierarchy

	classDiagram
	Closeable <|--InputStream : implements
	Closeable <|-- OutputStream : implements
	InputStream <-- FileInputStream
	InputStream <-- ByteArrayInputStream
	InputStream <-- FilterInputStream
	InputStream <-- PipedInputStream
	InputStream <-- ObjectInputStream
	
	FilterInputStream <-- DataInputStream
	FilterInputStream <-- BufferedInputStream
	FilterInputStream <-- PushBackInputStream

	OutputStream <-- FileOutputStream
	OutputStream <-- ByteArrayOutputStream
	OutputStream <-- FilterOutputStream
	OutputStream <-- PipedOutputStream
	OutputStream <-- ObjectOutputStream

	FilterOutputStream <-- DataOutputStream
	FilterOutputStream <-- BufferedOutputStream
	FilterOutputStream <-- PushBackOutputStream

	class Closeable {
	superinterface
	}
	class InputStream {
	
	}
		class FileInputStream {
		
		}
		class ByteArrayInputStream {
		
		}

		class FilterInputStream {
		
		}
			class DataInputStream {
			}
			class BufferedInputStream {
			}
			class PushBackInputStream {
			}

		class PipedInputStream {
		
		}
		class ObjectInputStream {
		
		}


	class OutputStream {
	
	}
		class FileOutputStream {
		
		}
		class ByteArrayOutputStream {
		
		}

		class FilterOutputStream {
		
		}
			class DataOutputStream {
			}
			class BufferedOutputStream {
			}
			class PushBackOutputStream {
			}


		class PipedOutputStream {
		
		}
		class ObjectOutputStream {
		
		}