Introduction to Computer Science Using Java: Think Java 2.0
CS 21: Pre-AP Java Programming
Watch Promo
Think Java, 2nd Edition
by Allen Downey and Chris Mayfield
and Lectures taught by Dr. Eric Chou
Think Java is an excellent introduction to computer science and programming intended for people with little or no experience. We start with the most basic concepts and are careful to define all terms when they are first used. The book presents each new idea in a logical progression. Larger topics, like recursion and object-oriented programming, are divided into smaller examples and introduced over the course of several chapters.
This revised and expanded second edition, currently under development, contains many improvements and additions to the first edition, which remains available here.
- Preface
- Chapter 1: Computer programming
- Chapter 2: Variables and Operators
- Chapter 3: Input and Output
- Chapter 4: Methods and Testing
- Chapter 5: Conditionals and Logic
- Chapter 6: Loops and Strings
- Chapter 7: Arrays and References
- Chapter 8: Recursive Methods
- Chapter 9: Immutable Objects
- Chapter 10: Mutable Objects
- Chapter 11: Designing Classes
- Chapter 12: Arrays of Objects
- Chapter 13: Objects of Arrays
- Chapter 14: Extending Classes
- Appendix A: Tools
- Appendix B: Javadoc
- Appendix C: Graphics
- Appendix D: Debugging
- Appendix E: Extras
- Index
Other Resources
- The Authors' Website contains more information about the book and provides a downloadable PDF.
- Trinkter Think Java 2.0 web-site
Your Instructor
Eric Chou, Ph.D.
He obtained his MS and PhD degree from the University of Southern California, Los Angeles, CA, USA. His technical fields is focused on smart sensory information processing, machine learning, optimization theory, communication and VLSI design.Currently, He is an adjunct faculty member in the On-line M.S. Computer Science/Data Science Programs at Lewis University, IL. He is also running a start-up company.
He love computational research and its application to real world. i have involved in many large-scale computer/communication product research development in many world-leading company such as HP, Micrel, and many startups. I also involved in founding a startup company. I also enjoy sharing my ideas through teaching. I hold many US and international patents in technical fields such as software development, mobile computing, IC design and communication receiver design. I am also a certified coach in Taekwondo in both UAST and AAU.








Course Curriculum
-
StartChapter 1: Computer Programming (93:55)
-
StartChapter 1 Extra Materials: Computer Programming (13:04)
-
StartProject 1: ASCII Arts
-
StartChapter 2: Variables and Operators (70:24)
-
StartChapter 2 Extra Session: Number Systems (55:46)
-
StartProject 2: Get Change
-
StartChapter 3: Input and output (80:32)
-
StartChapter 3: Project Washington High School (84:22)
-
StartProject 3: Student Record
-
StartChapter 4 Part 1: Methods and Testing (77:45)
-
StartChapter 4 Part 2: Methods and Testing (63:51)
-
StartChapter 4: Methods and Testing (Different View: Class and Instance Methods) (71:00)
-
StartChapter 4 Exercise 3 and 5: Stack Diagrams (With and Without Parameters) (9:52)
-
StartProject 4: Triangle Class
-
StartChapter 5: Conditionals and Logic (Part 1) (33:53)
-
StartChapter 5: Conditionals and Logic (Part 2) (76:17)
-
StartChapter 5: Conditionals and Logic (Extra Examples: Conditionals, Switch) (85:50)
-
StartProject 5: ABC Restaurant
-
StartChapter 6: Loops and Strings (Part 1: Loops)
-
StartChapter 6: Loops and String Part 2: Character and String (96:09)
-
StartProject 6: Index Space
-
StartChapter 8: Recursive Methods (68:12)
-
StartChapter 8: Recursive Methods (Mathematical Viewpoints) (105:46)
-
StartProject 8: Recursive Series
-
Start________ Mid-Term Project: Sum, Dice Toss, Multiplication Table and Occurrence Count (94:20)