1. java tools
    1. java
    2. javaw
    3. javac
  2. Java API
    1. java.lang
    2. java.io
    3. java.util
  3. Java Virtual Machine
  4. Java Language
    1. OOP
      1. Object
        1. States
          1. store in file
          2. Serializable
          3. store in memory
          4. Data
          5. Type
          6. primitive
          7. int
          8. byte
          9. short
          10. long
          11. char
          12. float
          13. double
          14. object refercence
          15. array
          16. []
          17. class
          18. interface
        2. Behaviors
          1. do ordered
          2. do together
          3. Multi-threading
          4. syncronized
      2. Encapsulation
        1. component
          1. Package
          2. Class
          3. containment
          4. fields
          5. member fields
          6. this
          7. getter
          8. setter
          9. static fields
          10. static
          11. constants
          12. static final
          13. constructors
          14. defaut constructor
          15. constructor with parameters
          16. methods
          17. contain statements
          18. expressions
          19. operators
          20. +,-,*,/,++,--
          21. >,<,==,>=,<=,!=
          22. &&,||,!
          23. &,|,^
          24. >>,<<
          25. =,+=,-=,&=,|=,*=,/=
          26. operands
          27. if
          28. if..else
          29. if...else if...else
          30. switch
          31. case
          32. break
          33. default
          34. while
          35. condition
          36. do
          37. do
          38. while
          39. condition
          40. break
          41. continue
          42. return
          43. try
          44. catch
          45. finalize
          46. throw
          47. Exception
          48. throws
          49. Nested Class
          50. Inner Class
          51. Member Class
          52. Local Class
          53. Anonymous Class
          54. Static Nested Class
          55. Scope
          56. Access Modifiers
          57. public
          58. protected
          59. (no modifier)
          60. private
      3. Inheritance
        1. Single Inheritance
          1. SubClass
          2. extends
          3. SuperClass
        2. Multiple Inheritance
          1. implements
          2. interface
      4. Abstraction
        1. abstract
      5. Polymorphism
    2. Flatform-independent
    3. Secure
    4. Robust
    5. Distributed
    6. Multi-Threaded