Think Java: How to Think Like a Computer Scientist

Think Java: How to Think Like a Computer Scientist

An introduction to Java programming for beginners. It is tailored for students preparing for the Computer Science Advanced Placement (AP) Exam, but it is for anyone who wants to learn Java.

This book is an introduction to computer science and programming intended for people with little or no experience. It starts with the most basic concepts and are careful to define all terms when they are first used.

 

Contents – version 5
The way of the program
What is a programming language?
What is a program?
What is debugging?
Formal and natural languages
The first program
Glossary
Exercises
Variables and types
More printing
Variables
Assignment
Printing variables
Keywords
Operators
Order of operations
Operators for Strings
Composition
Glossary
Exercises
Void methods
Floating-point
Converting from double to int
Math methods
Composition
Adding new methods
Classes and methods
Programs with multiple methods
Parameters and arguments
Stack diagrams
Methods with multiple parameters
Methods that return values
Glossary
Exercises
Conditionals and recursion
The modulus operator
Conditional execution
Alternative execution
Chained conditionals
Nested conditionals
The return statement
Type conversion
Recursion
Stack diagrams for recursive methods
Glossary
Exercises
GridWorld: Part 1
Getting started
BugRunner
Exercises
Value methods
Return values
Program development
Composition
Overloading
Boolean expressions
Logical operators
Boolean methods
More recursion
Leap of faith
One more example
Glossary
Exercises
Iteration and loops
Multiple assignment
The while statement
Tables
Two-dimensional tables
Encapsulation and generalization
Methods and encapsulation
Local variables
More generalization
Glossary
Exercises
Strings and things
Characters
Length
Traversal
Run-time errors
Reading documentation
The indexOf method
Looping and counting
Increment and decrement operators
Strings are immutable
Strings are incomparable
Glossary
Exercises
Mutable objects
Packages
Point objects
Instance variables
Objects as parameters
Rectangles
Objects as return types
Objects are mutable
Aliasing
null
Garbage collection
Objects and primitives
Glossary
Exercises
GridWorld: Part 2
Termites
Langton’s Termite
Exercises
Create your own objects
Class definitions and object types
Time
Constructors
More constructors
Creating a new object
Printing objects
Operations on objects
Pure functions
Modifiers
Fill-in methods
Incremental development and planning
Generalization
Algorithms
Glossary
Exercises
Arrays
Accessing elements
Copying arrays
Arrays and objects
for loops
Array length
Random numbers
Array of random numbers
Counting
The histogram
A single-pass solution
Glossary
Exercises
Arrays of Objects
The Road Ahead
Card objects
The printCard method
The sameCard method
The compareCard method
Arrays of cards
The printDeck method
Searching
Decks and subdecks
Glossary
Exercises
Objects of Arrays
The Deck class
Shuffling
Sorting
Subdecks
Shuffling and dealing
Mergesort
Class variables
Glossary
Exercises
Object-oriented programming
Programming languages and styles
Object methods and class methods
The toString method
The equals method
Oddities and errors
Inheritance
The class hierarchy
Object-oriented design
Glossary
Exercises
GridWorld: Part 3
ArrayList
Interfaces
public and private
Game of Life
LifeRunner
LifeRock
Simultaneous updates
Initial conditions
Exercises
Graphics
Java 2D Graphics
Graphics methods
Coordinates
Color
Mickey Mouse
Glossary
Exercises
Input and Output in Java
System objects
Keyboard input
File input
Catching exceptions
Program development
Strategies
Failure modes
Debugging
Syntax errors
Run-time errors
Logic errors
Index

Read Online

Download

Think Java: How to Think Like a Computer Scientist PDF

 

Contents – version 6

Preface
The philosophy behind the book
Object-oriented programming
Appendixes
Using the code examples
Contributors over the years
The way of the program
What is programming?
What is computer science?
Programming languages
The hello world program
Displaying strings
Escape sequences
Formatting code
Debugging code
Vocabulary
Exercises
Variables and operators
Declaring variables
Assignment
State diagrams
Printing variables
Arithmetic operators
Floating-point numbers
Rounding errors
Operators for strings
Composition
Types of errors
Vocabulary
Exercises
Input and output
The System class
The Scanner class
Program structure
Inches to centimeters
Literals and constants
Formatting output
Centimeters to inches
Modulus operator
Putting it all together
The Scanner bug
Vocabulary
Exercises
Void methods
Math methods
Composition revisited
Adding new methods
Flow of execution
Parameters and arguments
Multiple parameters
Stack diagrams
Reading documentation
Writing documentation
Vocabulary
Exercises
Conditionals and logic
Relational operators
Logical operators
Conditional statements
Chaining and nesting
Flag variables
The return statement
Validating input
Recursive methods
Recursive stack diagrams
Binary numbers
Vocabulary
Exercises
Value methods
Return values
Writing methods
Method composition
Overloading
Boolean methods
Javadoc tags
More recursion
Leap of faith
One more example
Vocabulary
Exercises
Loops
The while statement
Generating tables
Encapsulation and generalization
More generalization
The for statement
The do-while loop
Break and continue
Vocabulary
Exercises
Arrays
Creating arrays
Accessing elements
Displaying arrays
Copying arrays
Array length
Array traversal
Random numbers
Traverse and count
Building a histogram
The enhanced for loop
Vocabulary
Exercises
Strings and things
Characters
Strings are immutable
String traversal
Substrings
The indexOf method
String comparison
String formatting
Wrapper classes
Command-line arguments
Vocabulary
Exercises
Objects
Point objects
Attributes
Objects as parameters
Objects as return types
Mutable objects
Aliasing
The null keyword
Garbage collection
Class diagrams
Java library source
Vocabulary
Exercises
Classes
The Time class
Constructors
More constructors
Getters and setters
Displaying objects
The toString method
The equals method
Adding times
Pure methods and modifiers
Vocabulary
Exercises
Arrays of objects
Card objects
Card toString
Class variables
The compareTo method
Cards are immutable
Arrays of cards
Sequential search
Binary search
Tracing the code
Recursive version
Vocabulary
Exercises
Objects of arrays
The Deck class
Shuffling decks
Selection sort
Merge sort
Subdecks
Merging decks
Adding recursion
Vocabulary
Exercises
Objects of objects
Decks and hands
CardCollection
Inheritance
Dealing cards
The Player class
The Eights class
Class relationships
Vocabulary
Exercises
Development tools
Installing DrJava
DrJava interactions
Command-line interface
Command-line testing
Running Checkstyle
Tracing with a debugger
Testing with JUnit
Vocabulary
Java 2D graphics
Creating graphics
Graphics methods
Example drawing
Vocabulary
Exercises
Debugging
Compile-time errors
Run-time errors
Logic errors
Index

Think Java: How to Think Like a Computer Scientist (Version 6) PDF

Read Online

Download




Buy From Amazon

Releted Results : think java how to think like a computer scientist,think java how to think like a computer scientist 2nd edition,think java how to think like a computer scientist 2nd edition pdf,think java how to think like a computer scientist exercise solutions,

Thanks For Visiting Our Website www.freepdfbook.com To Support Us, Keep Share On Social Media.

See More POST On : Engineering Books