Java, Java, Java
Free

Java, Java, Java

By Ralph Morelli and Ralph Walde
Free
Book Description
Table of Contents
  • 0 Computers, Objects, and Java
    • 0.1 Welcome
    • 0.2 What Is a Computer?
    • 0.3 Networks, the Internet and the World Wide Web
    • 0.4 Why Study Programming?
    • 0.5 Programming Languages
    • 0.6 Why Java?
    • 0.7 What Is Object-Oriented Programming?
  • 1 Java Program Design and Development
    • 1.1 Introduction
    • 1.2 Designing Good Programs
    • 1.3 Designing a Riddle Program
    • 1.4 Java Language Elements
    • 1.5 Editing, Compiling, and Running a Java Program
    • 1.6 From the Java Library: System and PrintStream
  • 2 Objects: Using, Creating, and Defining
    • 2.1 Introduction
    • 2.2 Using String Objects
    • 2.3 Drawing Shapes with a Graphics Object (Optional)
    • 2.4 Class Definition
    • 2.5 CASE STUDY: Simulating a Two-Person Game
    • 2.6 From the Java Library: java.util.Scanner.
  • 3 Methods: Communicating with Objects
    • 3.1 Introduction
    • 3.2 Passing Information to an Object
    • 3.3 Constructor Methods
    • 3.4 Retrieving Information from an Object
    • 3.5 Passing a Value and Passing a Reference
    • 3.6 Flow of Control: Control Structures
    • 3.7 Testing an Improved OneRowNim
    • 3.8 From the Java Library java.lang.Object
    • 3.9 Object-Oriented Design: Inheritance and Polymorphism
    • 3.10 Drawing Lines and Defining Graphical Methods (Optional)
  • 4 Input/Output: Designing the User Interface
    • 4.1 Introduction
    • 4.2 The User Interface
    • 4.3 A Command-Line Interface
    • 4.4 A Graphical User Interface (GUI)
    • 4.5 Case Study: The One Row Nim Game
    • 4.6 From the Java Library: java.io.File and File Input (Optional)
  • 5 Java Data and Operators
    • 5.1 Introduction
    • 5.2 Boolean Data and Operators
    • 5.3 Numeric Data and Operators
    • 5.4 From the Java Library java.lang.Math
    • 5.5 Numeric Processing Examples
    • 5.6 From the Java Library java.text.NumberFormat
    • 5.7 Character Data and Operators
    • 5.8 Example: Character Conversions
    • 5.9 Problem Solving = Representation + Action
  • 6 Control Structures
    • 6.1 Introduction
    • 6.2 Flow of Control: Repetition Structures
    • 6.3 Counting Loops
    • 6.4 Example: Car Loan
    • 6.5 Graphics Example: Drawing a Checkerboard
    • 6.6 Conditional Loops
    • 6.7 Example: Computing Averages
    • 6.8 Example: Data Validation
    • 6.9 Principles of Loop Design
    • 6.10 The switch Multiway Selection Structure
    • 6.11 OBJECT-ORIENTED DESIGN: Structured Programming
  • 7 Strings and String Processing
    • 7.1 Introduction
    • 7.2 String Basics
    • 7.3 Finding Things Within a String
    • 7.4 Example: Keyword Search
    • 7.5 From the Java Library: java.lang.StringBuffer
    • 7.6 Retrieving Parts of Strings
    • 7.7 Example: Processing Names and Passwords
    • 7.8 Processing Each Character in a String
    • 7.9 Comparing Strings
    • 7.10 From the Java Library: java.util.StringTokenizer
    • 7.11 Handling Text in a Graphics Context (Optional)
  • 8 Inheritance and Polymorphism
    • 8.1 Introduction
    • 8.2 Java's Inheritance Mechanism
    • 8.3 Abstract Classes, Interfaces, and Polymorphism
    • 8.4 Example: A Toggle Button
    • 8.5 Example: The Cipher Class Hierarchy
    • 8.6 Case Study: A Two Player Game Hierarchy
    • 8.7 Principles Of Object-Oriented Design
  • 9 Arrays and Array Processing
    • 9.1 Introduction
    • 9.2 One-Dimensional Arrays
    • 9.3 Simple Array Examples
    • 9.4 Example: Counting Frequencies of Letters
    • 9.5 Array Algorithms: Sorting
    • 9.6 Array Algorithms: Searching
    • 9.7 Two-Dimensional Arrays
    • 9.8 Multidimensional Arrays (Optional)
    • 9.9 OBJECT-ORIENTED DESIGN: [2pt]Polymorphic Sorting (Optional)
    • 9.10 From the Java Library: java.util.Vector
    • 9.11 Case Study: An N-Player Computer Game
    • 9.12 A GUI-Based Game (Optional Graphics)
  • 10 Exceptions: When Things Go Wrong
    • 10.1 Introduction
    • 10.2 Handling Exceptional Conditions
    • 10.3 Java's Exception Hierarchy
    • 10.4 Handling Exceptions Within a Program
    • 10.5 Error Handling and Robust Program Design
    • 10.6 Creating and Throwing Your Own Exceptions
    • 10.7 From the Java Library: JOptionPane
  • 11 Files and Streams: Input/Output Techniques
    • 11.1 Introduction
    • 11.2 Streams and Files
    • 11.3 CASE STUDY: Reading and Writing Text Files
    • 11.4 The File Class
    • 11.5 Example: Reading and Writing Binary Files
    • 11.6 Object Serialization: Reading and Writing Objects
    • 11.7 From the Java Library javax.swing.JFileChooser
    • 11.8 Using File Data in Programs
  • 12 Recursive Problem Solving
    • 12.1 Introduction
    • 12.2 Recursive Definition
    • 12.3 Recursive String Methods
    • 12.4 Recursive Array Processing
    • 12.5 Example: Drawing (Recursive) Fractals
    • 12.6 OBJECT-ORIENTED DESIGN: Tail Recursion
    • 12.7 OBJECT-ORIENTED DESIGN: Recursion or Iteration?
    • 12.8 From the Java Library: javax.swing.JComboBox
  • 13 Graphical User Interfaces
    • 13.1 Introduction
    • 13.2 Java GUIs: From AWT to Swing
    • 13.3 The Swing Component Set
    • 13.4 OBJECT-ORIENTED DESIGN: Model-View-Controller Architecture
    • 13.5 The Java Event Model
    • 13.6 CASE STUDY: Designing a Basic GUI
    • 13.7 Containers and Layout Managers
    • 13.8 Checkboxes, Radio Buttons, and Borders
    • 13.9 Menus and Scroll Panes
  • 14 Threads and Concurrent Programming
    • 14.1 Introduction
    • 14.2 What Is a Thread?
    • 14.3 From the Java Library: java.lang.Thread
    • 14.4 Thread States and Life Cycle
    • 14.5 Using Threads to Improve Interface Responsiveness
    • 14.6 CASE STUDY: Cooperating Threads
    • 14.7 CASE STUDY: The Game of Pong
  • 15 Sockets and Networking
    • 15.1 Introduction
    • 15.2 An Overview of Networks
    • 15.3 Using Multimedia Network Resources for a Graphical Program
    • 15.4 From the Java Library: java.net.URL
    • 15.5 The Slide Show Program
    • 15.6 Adding Text Network Resources for an Application
    • 15.7 Client/Server Communication via Sockets
    • 15.8 CASE STUDY: Generic Client/Server Classes
    • 15.9 Playing One Row Nim Over the Network
    • 15.10 Java Network Security Restrictions
    • 15.11 Java Servlets and Java Server Pages
  • 16 Data Structures: Lists, Stacks, and Queues
    • 16.1 Introduction
    • 16.2 The Linked List Data Structure
    • 16.3 OBJECT-ORIENTED DESIGN: The List Abstract Data Type (ADT)
    • 16.4 The Stack ADT
    • 16.5 The Queue ADT
    • 16.6 From the Java Library: The Java Collections Framework and Generic Types
    • 16.7 Using the Set and Map Interfaces
    • 16.8 The Binary Search Tree Data Structure
  • A Coding Conventions
  • B The Java Development Kit
  • C The ASCII and Unicode Character Sets
  • D Java Keywords
  • E Operator Precedence Hierarchy
  • F Java Inner Classes
  • G Java Autoboxing and Enumeration
  • H Java and UML Resources
    No review for this book yet, be the first to review.
      No comment for this book yet, be the first to comment
      You May Also Like