Imagine! Java
Home > Computing and Information Technology > Computer programming / software engineering > Web programming > Imagine! Java: Programming Concepts in Context: International Edition
Imagine! Java: Programming Concepts in Context: International Edition

Imagine! Java: Programming Concepts in Context: International Edition


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

For one or two-semester  introductory CS1 Java courses taken by CS majors and non-majors.   Based on his inspiring lecture style, author Frank Carrano’s new text, Imagine! Java, engages students immediately with vivid “what if” examples and everyday analogies that keep them engaged and wanting to learn more.   Carrano starts students slowly by presenting concepts in small, manageable chunks that force students to focus on one core concept at a time. Carrano uses engaging repetitive examples to reinforce learning before moving on to more complicated concepts. This approach offers the student an opportunity to establish patterns they can use in their own programs and ultimately develop a more intuitive and sustainable understanding of the programming concepts.

Table of Contents:
TABLE OF CONTENTS 1. Introduction  An Overview of a Computer         What Can a Computer Do?         The Components of a Typical Computer A Computing System’s Software         The Programming Language Java         Graphics Writing, Compiling, and Running a Java Program         Tools and Resources         The Steps 2. A First Look at Java A Simple Java Program         Identifiers         Displaying Text Comments Data Types         Primitive Types         Reference Types         Variables         Declarations         Assignments Constants         Unnamed Constants         Named Constants Simple Input from the Keyboard A Problem Solved: Apples by the Box 3. Arithmetic Expressions Arithmetic Operators         The Addition and Subtraction Operators, + and -         The Multiplication Operator *         The Division Operator /         The Remainder Operator %         The Order of Operations Conversions Between Numeric Data Types         Coercion         Casting A Problem Partially Solved: Day of the Week Standard Mathematical Methods A Problem Solved: Wind Chill Debugging Interlude 1 : The Errors Made by Programmers Kinds of Errors Compile-Time Errors Execution-Time Errors 4. Using Classes and Objects Introduction The Class String         References         Characters Within Strings         Joining Strings         String Methods         Comparing Characters and Strings         Using Scanner to Read a String         A Problem Solved: Processing a String         Using Scanner to Extract Pieces of a String         Immutable Strings The Class Date The Class BigDecimal         A Problem Solved: More Apples by the Box Wrapper Classes The Class Random The Class DecimalFormat The Class JOptionPane         Using a Dialog Box to Read or Write a String 5. Basic Graphics Creating a Window         Getting Ready to Draw         A Sample Drawing Panel         Displaying a Panel The Class Graphics         The Coordinate System         Drawing Lines, Shapes, and Text         Painting Shapes A Problem Solved: Displaying a Temperature         The Class Font The Class Color A Problem Solved: The Happy Face 6. Class Definitions: The Fundamentals A Class Definition         Using the Class Greeter         Beginning the Class Definition         Defining Constructors         Defining Other Methods         Local Variables Creating a New Class         The Design         The Implementation Passing Arguments A Problem Solved: Comparing Classes of Squares Debugging Interlude 2 : Common Mistakes When Working with Classes Working with Classes         A Silent Computational Error         Undefined Variables of a Class Type         Constructors         Omitting the Method toString A Problem Solved: Extracting Strings 7. Decisions Flow of Control The if Statement         Compound Statements Basic Comparisons         Comparing Primitives         Comparing Objects A Problem Solved: Day of the Week The if-else Statement More Boolean Expressions in Comparisons A Problem Solved: Leap Years Assertions 8. Class Definitions: More Details Boolean-Valued Methods Private Methods         Checking the Validity of Data Fields Final Fields and Static Final Fields Enumerations A Problem Solved: Representing Coins         A Simpler Problem: A Class of Valueless Coins         Enhancing the Class Definition Calling a Constructor from a Constructor 9. Classes of Graphical Objects A Problem Solved: The Happy Face Reprised         The Class HappyFace: First Version         The Class HappyFace: Improved Version A Problem Solved: The Thermometer Reprised     The Class Thermometer     Displaying the Thermometer     Displaying Two Thermometers 10. Multiway Decisions Nested if Statements A Problem Solved: Health Club Welcome The switch Statement A Problem Solved: Where To? A Problem Solved: Representing a Temperature 11. Decisions and Object Interaction when Drawing A Problem Solved: The Thermometer Yet Again A Problem Solved: Displaying a Random Color A Problem Solved: Displaying a Row of Dots A Problem Solved: Where Is the Random Point? Debugging Interlude 3: Introduction to Testing Avoiding Mistakes Displaying a Calendar A Problem Solved: The Café Sign         Comparing Two Solutions 12. Repetition The Logic of a Loop The while Statement         A Problem Solved: A Guessing Game Errors in Loops         Off-by-One Errors         Infinite Loops Boolean Variables in Loops Nested Loops         The Scope of a Variable A Problem Solved: Root of an Equation 13. Repetition Continued The for Statement         Using an Enumeration with a for Statement The do Statement 14. Repetition when Drawing A Problem Solved: Displaying a Row of Dots (Reprise) A Problem Solved: The Quahog Shell A Problem Solved: Circles and Squares A Problem Solved: The Quilt A Problem Solved: A Random Walk Debugging Interlude 4: Debugging Loops Testing Debugging Loops         An Example Overview of Debugging Tools         The Command-Line Tool jdb (Optional) 15. Designing Classes Design Tools         Choosing Classes         CRC Cards         The Unified Modeling Language Specifying Methods         Abstraction and Encapsulation         Comments         Preconditions and Postconditions A Problem Solved: Creating a Class to Represent People         A Class Design         A Client for Person         Implementation of the Class Person Overloaded Methods Class Relationships         Reusing Classes         Coupling and Cohesion The Modifier static         Static Fields         Static Methods An Enumeration as a Class 16. Object-Oriented Concepts Java Interfaces         Writing an Interface         Some UML Details         Implementing an Interface         An Interface as a Data Type         Casting and Interfaces         Polymorphism and Interfaces Inheritance Basics         The Class Object         Overriding the Method equals         Polymorphism and Inheritance         Extending an Interface The Comparable Interface 17. Inheritance and Interfaces in Swing and the AWT The Organization of Major Classes Within the AWT and Swing Using Button Input         The Class JButton         Implementing the Interface ActionListener         Registering an Action Listener         Responding to a Button Click         A Problem Solved: Smile or Frown Using Mouse Input         The Interface MouseListener         A Problem Solved: Changing Color at the Click of a Mouse         The Interface MouseMotionListener Using Text Fields         The Class JTextField         A Problem Solved: Displaying RGB Colors Debugging Interlude 5: Debugging Tools Using Breakpoints and Watches in an IDE Logging         The Class Logger         An Example More Logging (Optional)         Message Levels         Other Logger Methods         Logging Messages at Levels Lower Than INFO A Problem Debugged: The Click Disc 18. Arrays Motivation Array Basics         Declaring and Creating an Array         Declaring and Initializing an Array         Referencing Array Elements         Array Index Out of Bounds Examples of Processing an Array         Computing Deviations         Partially Filled Arrays         Counting Occurrences in an Array         Finding the Smallest Entry in an Array         Finding the Index of the Smallest Entry in an Array         Searching an Array for a Given Entry More Fundamentals         Arrays of Objects         Passing an Array to a Method         Array Assignments         Copying an Array         Methods that Return an Array         Array Equality         Time Out 19. An Array-Based Data Structure The Bag         A Bag’s Behaviors Specifying a Bag         An Interface Implementing and Testing a Bag         A Group of Core Methods         Implementing More Methods         Methods That Remove Strings         The Class Definition 20. Arrays Continued More About One-Dimensional Arrays         The For-Each Loop Applied to Arrays         Resizing an Array         A Problem Solved: An Expandable Bag         An Arbitrary Number of Arguments         The Parameter in the Method main Multidimensional Arrays         The Basics         Java’s Representation         A Problem Solved: Processing a Digital Image         Arrays of Three or More Dimensions         Ragged Arrays Parallel Arrays Debugging Interlude 6 : Debugging Arrays An Unallocated Array A Silent Error         The Method toArray as a Stub Array Index Out of Bounds         Defining the Method toArray Another Silent Error         The Method remove 21. Array Lists The List         The Behaviors of a List The Interface List The Class ArrayList         An Array List’s Size and Capacity         Creating an Array List         Adding Entries to a List         Retrieving Entries         Searching for Entries         Replacing Entries         Removing Entries Arrays Versus Array Lists 22. Arrays when Drawing Polygons         Polygon Methods in the Class Graphics         The Class Polygon A Class of Right Triangles         Data Fields and Methods         The Class Point         Specifications for the Class RightTriangle         Implementing RightTriangle A Problem Solved: A New Quilt         A Class of Squares         A Class of Quilts A Problem Solved: Connecting the Dots         Using Parallel Arrays of Coordinates         Using an Array of Points         Using a List of Points A Problem Solved: The Keypad         Establishing the Design         The Class OutputPanel         The Class KeypadPanel         The Class KeypadDriver 23. Sorting and Searching Sorting         Selection Sort         Detecting When an Array Is Sorted         Insertion Sort         Sorting Objects         Sorting Methods in the Java Class Library Searching         A Linear Search of an Unsorted Array         A Linear Search of a Sorted Array         A Binary Search of a Sorted Array         Searching Methods in the Java Class Library The Performance of Algorithms         The Performance of Sorting Methods         The Performance of Searching Methods 24. Recursion What Is Recursion?         Example: The Countdown         Implementation Details Tracing a Recursive Method Recursive Methods That Return a Value A Problem Solved: Speaking the Digits in a Number A Problem Solved: Writing a Number in Words Recursion Versus Iteration         Fibonacci Numbers: A Poor Use of Recursion Kinds of Recursion         Tail Recursion         Direct, Indirect, and Mutual Recursion 25. Recursive Array Processing Basic Techniques Searching an Array Recursively         A Recursive Linear Search         Searching a Bag Recursively         A Recursive Binary Search A Recursive Merge Sort         Merging Arrays         The Merge Sort Algorithm         A Merge Sort Method         Merge Sort in the Java Class Library         The Performance of Merge Sort (Optional) Recursion Versus Iteration         Binary Search         Merge Sort 26. Recursive Drawings A Problem Solved: The Target A Problem Solved: Painting Like Mondrian A Problem Solved: The Sierpinski Carpet Debugging Interlude 7 : Debugging Recursive Methods Infinite Recursion         Carpeting Trouble: Base-Case Omission Incorrect Results         Sorting and Merging, Merging and Sorting         Verbalizing Integers: Saying Too Much 27. Inheritance Continued A Problem Solved: Designing a Hierarchy of Classes The Basic Rules of Inheritance         What Is Inherited?         Constructors of the Superclass and Subclass         Protected Access         The Implementation So Far         Packages and Package Access         Type Compatibility         Casting Object Types Abstract Classes and Methods         Interfaces Versus Abstract Classes Overriding Methods, Hiding Methods         Overriding Revisited         Hiding Methods Final Classes and Methods 28. Exceptions The Basics         Kinds of Exceptions         Errors Handling an Exception         Postpone Handling: The throws Clause         Handle It Now: The try-catch Blocks         Multiple catch Blocks Throwing an Exception Programmer Defined Exception Classes         A Sample Definition         Using Our Own Exception Class A Problem Solved: Groups of People Inheritance and Exceptions The finally Block 29. Text Files Preliminaries         Why Files?         Streams         The Kinds of Files         File Names Creating a Text File         Opening, Writing, and Closing a Text File         A Class for Creating Text Files         A Problem Solved: Creating a Text File of Colleges and Universities Reading a Text File         Opening, Reading, and Closing a Text File         A Problem Solved: Displaying a List of Colleges and Universities         Reading a Text File More Than Once Appending Data to an Existing Text File Changing Existing Data in a Text File   ONLINE CHAPTERS 30. Sequential Binary Files Creating a Binary File of Objects     Opening, Writing, and Closing a Binary File     A Class for Creating a Binary File of Objects     A Problem Solved: Creating a Binary File of Colleges and Universities Reading a Binary File of Objects     Opening, Reading, and Closing a Binary File     A Problem Solved: Displaying a List of Colleges and Universities Arrays in Binary Files     Writing Arrays to a Binary File     Reading Arrays From a Binary File Binary Files of Primitive Data     Writing Primitive Data to a Binary File     Reading Primitive Data From a Binary File 31. Random-Access Files The File Pointer Basic Operations for a Random Access File         Opening a Random-Access File         Writing to a Random-Access File         Reading a Random-Access File         Recording File-Pointer Values A Problem Solved: A Glossary of Terms         Creating the Glossary         Accessing the Glossary 32. Generics and Collections Generics         Generic Types Within a Class Definition         Generic Types Within an Interface         A Problem Solved: A Bag of Objects Collections         Abstract Data Types         Data Structures         The Java Collections Framework   APPENDICES A. Getting Java for Free B. Reserved Words C. Unicode Characters D. Documentation and Programming Style Naming Variables and Classes Indenting Comments     Single-Line Comments     Comment Blocks     When to Write Comments     Java Documentation Comments     Running javadoc E. Cloning Cloning an Object Cloning an Array Glossary Index    

About the Author :
Frank M. Carrano is a professor emeritus of computer science at the University of Rhode Island. He received the Ph.D. degree in computer science from Syracuse University in 1969. His interests include data structures, computer science education, social issues in computing, and numerical computation. Professor Carrano is particularly interested in the design and delivery of undergraduate courses in computer science. He has authored several well-known computer science textbooks for undergraduates. Frank’s Making it Real blog http://frank-m-carrano.com/blog/ extends his textbooks and lectures to a lively discussion with instructors and students about teaching and learning computer science. Follow Frank on Twitter: http://twitter.com/Frank_M_Carrano Find him on Facebook: https://www.facebook.com/makingitreal

Review :
“Carrano uses a back-and-forth approach to teach a concept and reinforce it by covering it in more detail later. This is a good design that gives students time to digest a concept before introducing more complexity.” — Douglas Twitchell, Illinois State University “This is a novel pedagogical approach that will drive the evolution of textbook design strategy. The tone is easy and conversational, and the level of detail is appropriate. The author intuits probable questions generated by the reader and responds appropriately.” — Ric Heishman, George Mason University “Repeated reference to the Java documentation (API) is a strong point of this text.” — Tim Margush, University of Akron “I appreciate the hands-on examples in this book, especially the step-by-step description. The concept of “core method” is very impressive.” — Jianchao Han, California State University, Dominguez Hills “The examples strike a good balance between being short enough to be understood, while being long enough to illustrate the concept in question.” — Paul Sivilotti, Ohio State University


Best Sellers


Product Details
  • ISBN-13: 9780131377158
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Pearson
  • Height: 256 mm
  • No of Pages: 1008
  • Sub Title: Programming Concepts in Context: International Edition
  • Width: 217 mm
  • ISBN-10: 0131377159
  • Publisher Date: 20 May 2010
  • Binding: Paperback
  • Language: English
  • Spine Width: 33 mm
  • Weight: 1536 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Imagine! Java: Programming Concepts in Context: International Edition
Pearson Education (US) -
Imagine! Java: Programming Concepts in Context: International Edition
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Imagine! Java: Programming Concepts in Context: International Edition

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!