SharedPreferences is nothing but a way to access xml files
Can be accessed directly or using Preference activity
Preferences should not hold sensitive information.
They need default values because preferences can be deleted.
Preference Event Listener
FileReader and FileWriter for text files
in try, parenthesis will automatically close files.
Large files, wrap FileReader with BufferedReader
Scanner(BufferedReader(FileReader))
static initializer/constructor gets called whenever a static variable is referenced
instance field initializers gets called before the constructor
local inner classes
anonymous inner class
Enumeration classes require private constructors, ex: override toString()