did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780131486607

Small Java How to Program

by ;
  • ISBN13:

    9780131486607

  • ISBN10:

    0131486608

  • Edition: 6th
  • Format: Paperback
  • Copyright: 2004-08-05
  • Publisher: Prentice Hall
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $165.80

Summary

This special edition ofJava How to Programis up-to-date with theJava 2 Platform Standard Edition 1.5.It covers fundamental programming topics and provides several extra chapters so readers can include or omit material as needed.Includes Recursion and Searching and Sorting chapters. Provides extensive complete programming exercises plus "What does this program do?", "What's wrong with this program?", "Complete the program" and "Modify the program" exercises. Covers text-file processing. Features coverage of special topics, such as pre- and postconditions, invariants, testing and debugging, ethics and software engineering. Includes a CD-ROM with every copy of the book that contains: (subject to change) Javatrade; 2 Platform, Standard Edition 1.5; Netbeans; JCreator LE; jEdit; jGRASP; BlueJ; Source code for all the book's examples; Hyperlinks to valuable Javatrade; demos and Internet resources.A useful brief reference for programmers or anyone who wants to learn more about the Java programming language.

Author Biography

Dr. Harvey Deitel is one of the world's leading computer science instructors and seminar presenters, and author of more than a dozen books. He worked on the pioneering operating system teams in industry and academia that developed many of the techniques at the heart of operating systems like UNIX®, Windows NT™ and OS/2™.

Paul Deitel has taught Visual Basic, Java, C and C++ at numerous hardware and software companies, including Sun Microsystems, Digital Equipment Corporation, IBM, Open Environment Corporation, Adra Systems, and Cambridge Technology Partners, and is himself an expert developer.

The Deitels are principals of Deitel & Associates, Inc., an international training organization specializing in Visual Basic, Java, C and C++, and object technologies.

Table of Contents

Preface xv
Before You Begin xxxvii
1 Introduction to Computers, the Internet and the World Wide Web
1(34)
1.1 Introduction
2(2)
1.2 What Is a Computer?
4(1)
1.3 Computer Organization
4(1)
1.4 Early Operating Systems
5(1)
1.5 Personal, Distributed and Client/Server Computing
6(1)
1.6 The Internet and the World Wide Web
6(1)
1.7 Machine Languages, Assembly Languages and High-Level Languages
7(1)
1.8 History of C and C++
8(1)
1.9 History of Java
9(1)
1.10 Java Class Libraries
9(2)
1.11 FORTRAN, COBOL, Pascal and Ada
11(1)
1.12 BASIC, Visual Basic, Visual C++, C# and .NET
11(1)
1.13 Typical Java Development Environment
12(3)
1.14 Notes about Java and Small Java How to Program, Sixth Edition
15(1)
1.15 Test-Driving a Java Application
16(5)
1.16 Introduction to Object Technology and the UML
21(5)
1.17 Wrap-Up
26(1)
1.18 Web Resources
26(9)
2 Introduction to Java Applications
35(37)
2.1 Introduction
36(1)
2.2 First Program in Java: Printing a Line of Text
36(7)
2.3 Modifying Our First Java Program
43(2)
2.4 Displaying Text with printf
45(2)
2.5 Another Java Application: Adding Integers
47(4)
2.6 Memory Concepts
51(1)
2.7 Arithmetic
52(4)
2.8 Decision Making: Equality and Relational Operators
56(4)
2.9 Wrap-Up
60(12)
3 Introduction to Gasses and Objects
72(34)
3.1 Introduction
73(1)
3.2 Classes, Objects, Methods and Instance Variables
73(2)
3.3 Declaring a Class with a Method and Instantiating an Object of a Class
75(4)
3.4 Declaring a Method with a Parameter
79(3)
3.5 Instance Variables, set Methods and get Methods
82(5)
3.6 Primitive Types vs. Reference Types
87(1)
3.7 Initializing Objects with Constructors
88(3)
3.8 Floating-Point Numbers and Type double
91(4)
3.9 (Optional) GUI and Graphics Case Study: Using Dialog Boxes
95(3)
3.10 Wrap-Up
98(8)
4 Control Statements: Part 1
106(51)
4.1 Introduction
107(1)
4.2 Algorithms
107(1)
4.3 Pseudocode
108(1)
4.4 Control Structures
108(3)
4.5 if Single-Selection Statement
111(1)
4.6 if... else Double-Selection Statement
112(5)
4.7 while Repetition Statement
117(1)
4.8 Formulating Algorithms: Counter-Controlled Repetition
118(5)
4.9 Formulating Algorithms: Sentinel-Controlled Repetition
123(7)
4.10 Formulating Algorithms: Nested Control Statements
130(6)
4.11 Compound Assignment Operators
136(1)
4.12 Increment and Decrement Operators
137(2)
4.13 Primitive Types
139(1)
4.14 (Optional) GUI and Graphics Case Study: Creating Simple Drawings
140(5)
4.15 Wrap-Up
145(12)
5 Control Statements: Part 2
157(47)
5.1 Introduction
158(1)
5.2 Essentials of Counter-Controlled Repetition
158(2)
5.3 for Repetition Statement
160(4)
5.4 Examples Using the for Statement
164(5)
5.5 do...while Repetition Statement
169(1)
5.6 switch Multiple-Selection Statement
170(8)
5.7 break and continue Statements
178(2)
5.8 Logical Operators
180(6)
5.9 Structured Programming Summary
186(5)
5.10 (Optional) GUI and Graphics Case Study: Drawing Rectangles and Ovals
191(3)
5.11 Wrap-Up
194(10)
6 Methods: A Deeper Look
204(48)
6.1 Introduction
205(1)
6.2 Program Modules in Java
206(1)
6.3 static Methods, static Fields and Class Math
207(3)
6.4 Declaring Methods with Multiple Parameters
210(4)
6.5 Notes on Declaring and Using Methods
214(1)
6.6 Method Call Stack and Activation Records
215(1)
6.7 Argument Promotion and Casting
215(2)
6.8 Java API Packages
217(2)
6.9 Case Study: Random-Number Generation
219(18)
6.9.1 Generalized Scaling and Shifting of Random Numbers
223(1)
6.9.2 Random-Number Repeatability for Testing and Debugging
223(1)
6.10 Case Study: A Game of Chance (Introducing Enumerations)
224(5)
6.11 Scope of Declarations
229(3)
6.12 Method Overloading
232(3)
6.13 (Optional) GUI and Graphics Case Study: Colors and Filled Shapes
235(2)
6.14 Wrap-Up
237(15)
7 Arrays
252(64)
7.1 Introduction
253(1)
7.2 Arrays
253(2)
7.3 Declaring and Creating Arrays
255(1)
7.4 Examples Using Arrays
256(9)
7.5 Case Study: Card Shuffling and Dealing Simulation
265(3)
7.6 Enhanced for Statement
268(2)
7.7 Passing Arrays to Methods
270(4)
7.8 Case Study: Class GradeBook Using an Array to Store Grades
274(4)
7.9 Multidimensional Arrays
278(5)
7.10 Case Study: Class GradeBook Using a Two-Dimensional Array
283(6)
7.11 Variable-Length Argument Lists
289(1)
7.12 Using Command-Line Arguments
290(2)
7.13 (Optional) GUI and Graphics Case Study: Drawing Arcs
292(3)
7.14 Wrap-Up
295(21)
8 Classes and Objects a Deeper Look
316(53)
8.1 Introduction
317(1)
8.2 Time Class Case Study
318(3)
8.3 Controlling Access to Members
321(1)
8.4 Referring to the Current Object's Members with the this Reference
322(3)
8.5 Time Class Case Study: Overloaded Constructors
325(5)
8.6 Default and No-Argument Constructors
330(1)
8.7 Notes on Set and Get Methods
331(1)
8.8 Composition
332(2)
8.9 Enumerations
334(4)
8.10 Garbage Collection and Method finalize
338(1)
8.11 static Class Members
339(5)
8.12 static Import
344(1)
8.13 final Instance Variables
345(2)
8.14 Software Reusability
347(1)
8.15 Data Abstraction and Encapsulation
348(1)
8.16 Ti me Class Case Study: Creating Packages
349(6)
8.17 Package Access
355(1)
8.18 (Optional) GUI and Graphics Case Study: Using Objects with Graphics
355(5)
8.19 Wrap-Up
360(9)
9 Object- Oriented Programming: Inheritance
369(44)
9.1 Introduction
370(1)
9.2 Superclasses and Subclasses
371(2)
9.3 protected Members
373(1)
9.4 Relationship between Superclasses and Subclasses
374(24)
9.4.1 Creating and Using a CommissionEmployee Class
375(4)
9.4.2 Creating a BasePlusCommissionEmployee Class without Using Inheritance
379(5)
9.4.3 Creating a CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy
384(3)
9.4.4 CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using protected Instance Variables
387(6)
9.4.5 CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using private Instance Variables
393(5)
9.5 Constructors in Subclasses
398(6)
9.6 Software Engineering with Inheritance
404(1)
9.7 Object Class
405(2)
9.8 (Optional) GUI and Graphics Case Study: Displaying Text and Images Using Labels
407(2)
9.9 Wrap-Up
409(4)
10 Object-Oriented Programming: Polymorphism 413(43)
10.1 Introduction
414(2)
10.2 Polymorphism Examples
416(1)
10.3 Demonstrating Polymorphic Behavior
417(3)
10.4 Abstract Classes and Methods
420(2)
10.5 Case Study: Payroll System Using Polymorphism
422(15)
10.5.1 Creating Abstract Superclass Employee
423(3)
10.5.2 Creating Concrete Subclass SalariedEmployee
426(1)
10.5.3 Creating Concrete Subclass HourlyEmployee
427(2)
10.5.4 Creating Concrete Subclass CommissionEmployee
429(1)
10.5.5 Creating Indirect Concrete Subclass BasePlusCommissionEmployee
430(2)
10.5.6 Demonstrating Polymorphic Processing, Operator instanceof and Downcasting
432(4)
10.5.7 Summary of the Allowed Assignments Between Superclass and Subclass Variables
436(1)
10.6 final Methods and Classes
437(1)
10.7 Case Study: Creating and Using Interfaces
438(12)
10.7.1 Developing a Payable Hierarchy
439(1)
10.7.2 Declaring Interface Payable
440(1)
10.7.3 Creating Class Invoice
441(2)
10.7.4 Modifying Class Employee to Implement Interface Payable
443(2)
10.7.5 Modifying Class SalariedEmployee for Use in the Payable Hierarchy
445(2)
10.7.6 Using Interface Payable to Process Invoices and Employees Polymorphically
447(1)
10.7.7 Declaring Constants with Interfaces
448(1)
10.7.8 Common Interfaces of the Java API
449(1)
10.8 (Optional) GUI and Graphics Case Study: Drawing with Polymorphism
450(2)
10.9 Wrap-Up
452(4)
A Operator Precedence Chart 456(2)
A.1 Operator Precedence
456(2)
B ASCII Character Set 458(1)
C Keywords and Reserved ors 459(1)
D Primitive Types 460(1)
E Number Systems 461(13)
E.1 Introduction
462(3)
E.2 Abbreviating Binary Numbers as Octal and Hexadecimal Numbers
465(1)
E.3 Converting Octal and Hexadecimal Numbers to Binary Numbers
466(1)
E.4 Converting from Binary, Octal or Hexadecimal to Decimal
466(1)
E.5 Converting from Decimal to Binary, Octal or Hexadecimal
467(2)
E.6 Negative Binary Numbers: Two's Complement Notation
469(5)
F Unicode® 474(11)
F.1 Introduction
474(1)
F.2 Unicode Transformation Formats
475(1)
F.3 Characters and Glyphs
476(1)
F.4 Advantages/Disadvantages of Unicode
477(1)
F.5 Unicode Consortium's Web Site
477(2)
F.6 Using Unicode
479(2)
F.7 Character Ranges
481(4)
G Using the Java API Documentation 485(10)
G.1 Introduction
485(1)
G.2 Navigating the Java API
486(9)
H Creating Documentation 495(12)
H.1 Introduction
495(1)
H.2 Documentation Comments
495(1)
H.3 Documenting Java Source Code
496(7)
H.4 javadoc
503(1)
H.5 Files Produced by javadoc
504(3)
I Labeled break and continue Statements 507(3)
I.1 Introduction
507(1)
I.2 Labeled break Statement
507(1)
I.3 Labeled continue Statement
508(2)
J Using h Debugger 510(17)
J.1 Introduction
511(1)
J.2 Breakpoints and the run, stop, cont and print Commands
511(5)
J.3 The print and set Commands
516(2)
J.4 Controlling Execution Using the step, step up and next Commands
518(3)
J.5 The watch Command
521(2)
J.6 The clear Command
523(3)
J.7 Wrap-Up
526(1)
Index 527

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program