Introduction to Java Programming, Brief Version, 11th edition

Published by Pearson (March 2, 2017) © 2018

  • Y Daniel Liang Georgia Southern University

eTextbook

per month

  • Anytime, anywhere learning with the Pearson+ app
  • Easy-to-use search, navigation and notebook
  • Simpler studying with flashcards
from$111.99

  • Hardcover, paperback or looseleaf edition
  • Affordable rental option for select titles
  • Free shipping on looseleafs and traditional textbooks

This text is intended for a 1-semester CS1 course sequence. The Brief Version contains the first 18 chapters of the Comprehensive Version. The first 13 chapters are appropriate for preparing the AP Computer Science exam.

For courses in Java Programming.

A fundamentals-first introduction to basic programming concepts and techniques                                                                 

Designed to support an introductory programming course, Introduction to Java Programming and Data Structures, Brief Version teaches concepts of problem-solving and object-orientated programming using a fundamentals-first approach. Beginner programmers learn critical problem-solving techniques then move on to grasp the key concepts of object-oriented, GUI programming, advanced GUI and Web programming using JavaFX. This course approaches Java GUI programming using JavaFX, which has replaced Swing as the new GUI tool for developing cross-platform-rich Internet applications and is simpler to learn and use. The 11th edition has been completely revised to enhance clarity and presentation, and includes new and expanded content, examples, and exercises.

Also available with MyLab Programming.

MyLab™ Programming is an online learning system designed to engage students and improve results. MyLab Programming consists of programming exercises correlated to the concepts and objectives in this book. Through practice exercises and immediate, personalized feedback, MyLab Programming improves the programming competence of beginning students who often struggle with the basic concepts of programming languages.

Also available with MyLab Programming.

MyLab™ Programming is an online learning system designed to engage students and improve results. MyLab Programming consists of programming exercises correlated to the concepts and objectives in this book. Through practice exercises and immediate, personalized feedback, MyLab Programming improves the programming competence of beginning students who often struggle with the basic concepts of programming languages.

  • UPDATED! User Interface provides a new streamlined interface based on experienced user feedback. Course creation, configuration, and navigation are now easier than ever.
  • EXPANDED! Exercise Editor now allows you to easily create new programming exercises. In addition to assigning the hundreds of programming exercises already available in MyLab Programming, you can create and assign programming exercises to customize your course.
  • UPDATED! VideoNotes Tutorials provide step-by-step video tutorials specifically designed to enhance the programming concepts presented in Introduction to Java Programming. Students can view the entire problem-solving process outside of the classroom–when they need help the most.
  • Interactive Practice provides first-hand programming experience in an interactive online environment.
  • Immediate feedback  for incorrect answers give students personalized feedback differentiating logical and compiler errors . The error messages include both the feedback from the compiler and plain English interpretations of likely causes for the incorrect answer.
  • Pearson eText gives students access to their textbook anytime, anywhere. In addition to note taking, highlighting, and bookmarking, the Pearson eText offers interactive and sharing features. Rich media options let students watch lecture and example videos as they read or do their homework. Instructors can share their comments or highlights, and students can add their own, creating a tight community of learners in your class.
    • The Pearson eText companion app allows existing subscribers to access their titles on an iPad or Android tablet for either online or offline viewing.
  • Dynamic grading and assessment provide auto-grading of student assignments, saving you time and offering students immediate learning opportunities:
    • A dynamic roster tracks their performance and maintains a record of submissions.
    • The color-coded gradebook gives you a quick glance of your classes' progress. Easily drill down to receive information on a single student's performance or a specific problem. Gradebook results can be exported to Excel to use with your LMS.

About the Book

  • A fundamentals-first approach prepares students to learn object-oriented programing and advanced Java programming by first building foundational skills.
    • The title has been changed to Introduction to Java Programming and Data Structures, Comprehensiveto more accurately reflect the depth and breadth of coverage Liang provides.  The Comprehensive edition contains coverage of all subjects taught in a typical data structures and algorithms course.
    • The fundamental concepts and techniques of loops, methods, and arrays are introduced before objects and classes. This instructs new programmers in the essential skills to succeed. A good introduction on primitive data types, control statements, methods, and arrays prepares students to learn object-oriented programming.
    • Strings are covered early in the text to allow students to use objects and strings to develop interesting programs early.                                           
    • UPDATED to Java 8 and 9. Examples and exercises are improved and simplified by using the new features in Java 8 and 9.
    • Object-oriented chapter focus addresses the difficulty students have with adapting to the object-oriented paradigm by focusing on class design. Several examples are used to demonstrate the advantages of object-oriented programming so that students learn how and when to apply OOP concepts effectively.
    • Bonus chapters that cover advanced data structures such as 2-4 trees, B-trees, and red-black trees.
    • The book allows for flexible chapter orderings to enable GUI, exception handling, recursion, generics, and the Java Collections Framework to be covered earlier or later.

  • With a problem-driven focus, students learn to approach programming as a method for problem solving rather than syntax.
    • Programming, data structures, and algorithms are seamlessly integrated into one text. This practical approach to teaching data structures covers how to use and implement various data structures to develop efficient algorithms, before introducing custom data structures for trees and graphs.
    • Examples and exercises emphasize problem solving and the need to develop reusable components to create practical projects.
    • NEW! JavaFX replaces all GUI examples and exercises. JavaFX is a new framework for developing Java GUI programs that greatly simplifies GUI programs and is easier to learn than Swing.
    • Math functions are introduced early to enable students to write code using math functions.
  • Pedagogical features foster student interest in introductory programming and appeal to students in all majors
    • Engaging Problems introduce each chapter and are solved within the chapter. The book uses a wide variety of problems with various levels of difficulty to motivate students. The problems cover many application areas in gaming, math, business, science, animation, and multimedia.
    • Clear chapter objectives list what students should learn from the chapter. This helps them determine whether they have met the objectives after completing the chapter.
    • Key Points, Check Points, and chapter summaries for each chapter highlight important concepts and allow students to track their progress, evaluate, and reinforce their learning.
    • Notes, tips, cautions, and design guides, inserted throughout the text, offer valuable advice and insight on important aspects of program development.
    • Programming exercises provide students with opportunities to apply the new skills they have learned on their own. Difficulty levels are rated as easy (no asterisk), moderate (*), hard (**), or challenging (***).
    • Problems and case studies, carefully chosen and presented in an easy-to-follow style, teach problem solving and programming concepts. The book uses many small, simple, and stimulating examples to demonstrate important ideas.

  • Extensive resources provide support for both instructors and students
    • EXPANDED! Text-specific Companion Website, maintained by the author at www.pearsonhighered.com/liang
      • Algorithm Animations are valuable pedagogical tools to demonstrate how algorithms work. Algorithm animations can be accessed from the Companion Website.
      • More than 200 additional programming exercises with solutions are provided to the instructor in the Companion Website. These exercises are not printed in the text.
      • VideoNotes provide step-by-step video tutorials specifically designed to enhance the programming concepts presented in the book. Students can view the entire problem-solving process outside of the classroom–when they need help the most.
      • Additional student resources include CheckPoint questions (organized by sections for each chapter), solutions to even-numbered programming exercises, source code for the examples in the book, Interactive quizzes (organized by sections for each chapter), Java IDE and programming resources, debugging tips, and errata.
    • Instructor resources include
      • Microsoft PowerPoint slides with interactive buttons to view full-color, syntax-highlighted source code and to run programs without leaving the slides.
      • Solutions to programming exercises give students access to the solutions of even-numbered programming exercises.
      • More than 100 additional programming exercises,organized by chapters, provide solutions to additional exercises available only to the instructors.
      • Web-based quiz generator allow instructors to generate quizzes from a large database of more than two thousand questions.
      • Sample exams provide additional opportunity for practice. Most exams have four parts:
        • Multiple-choice questions or short-answer questions
        • Correct programming errors
        • Trace programs
        • Write programs
      • Projects generally give a description and ask students to analyze, design, and implement the project.                                                                                   

Also available with MyLab Programming.MyLab™ Programming is an online learning system designed to engage students and improve results. MyLab Programming consists of programming exercises correlated to the concepts and objectives in this book. Through practice exercises and immediate, personalized feedback, MyLab Programming improves the programming competence of beginning students who often struggle with the basic concepts of programming languages.
  • UPDATED! User Interface provides a new streamlined interface based on experienced user feedback. Course creation, configuration, and navigation are now easier than ever.
  • EXPANDED! Exercise Editor now allows you to easily create new programming exercises. In addition to assigning the hundreds of programming exercises already available in MyLab Programming, you can create and assign programming exercises to customize your course. The Exercise Editor is easy to use and gives you the option to select different programming languages and exercise types.
  • VideoNotes provide step-by-step video tutorials specifically designed to enhance the programming concepts presented in Introduction to Java Programming. Students can view the entire problem-solving process outside of the classroom—when they need help the most.

About the Book

  • The title has been changed to Introduction to Java Programming and Data Structures, Comprehensive to reflect its use in data structures courses based on a practical approach to introduce design, implement, and use data structures that covers all topics in a typical data structures course.
  • UPDATED to Java 8 and 9. Examples and exercises are improved and simplified by using the new features in Java 8 and 9.
  • More examples and exercises in the data structures chapters use Lambda expressions to simplify coding.
  • Chapter 30 is brand new to introduce aggregate operations for collection streams.

Content Updates

  • The GUI chapters are updated to JavaFX 8. The examples are revised. The user interfaces in the examples and exercises are now resizable and displayed in the center of the window.
  • Chapter 13 introduces default and static methods
  • Chapter 15 covers inner classes, anonymous inner classes, and lambda expressions using practical examples
  • Chapter 20 introduces the forEach method as a simple alternative to the foreach loop for applying an action to each element in a collection.
  • Chapters 24-29 Use the default methods for interfaces in Java 8 to redesign MyList, MyArrayList, MyLinkedList, Tree, BST, AVLTree, MyMap, MyHashMap, MySet, MyHashSet, Graph, UnweightedGraph, and WeightedGraph
  • Chapter 31 introduces FXML and the Scene Buildervisual tools 

Brief Contents

  1. Introduction to Computers, Programs, and Java
  2. Elementary Programming
  3. Selections
  4. Mathematical Functions, Characters, and Strings
  5. Loops
  6. Methods
  7. Single-Dimensional Arrays
  8. Multidimensional Arrays
  9. Objects and Classes
  10. Object-Oriented Thinking
  11. Inheritance and Polymorphism
  12. Exception Handling and Text I/O
  13. Abstract Classes and Interfaces
  14. JavaFX Basics
  15. Event-Driven Programming and Animations
  16. JavaFX UI Controls and Multimedia
  17. Binary I/O
  18. Recursion

Appendixes

  • Appendix A Java Keywords
  • Appendix B The ASCII Character Set
  • Appendix C Operator Precedence Chart
  • Appendix D Java Modifiers
  • Appendix E Special Floating-Point Values
  • Appendix F Number Systems
  • Appendix G Bitwise Operations
  • Appendix H Regular Expressions
  • Appendix I Enumerated Types

Dr. Y. Daniel Liang earned his Ph.D. in Computer Science from the University of Oklahoma in 1991, and an MS and BS in Computer Science from Fudan University in Shanghai, China, in 1986 and 1983. Prior to joining Armstrong, he was an associate professor in computer science at Purdue University in Fort Wayne, where he twice received the Excellence in Research award.
Dr. Liang was trained in theoretical computer science. He was active in graph algorithms from 1990 to 1995 and published more than ten papers in several established journals such as SIAM Journal on Computing, Discrete Applied Mathematics, Acta Informatics, and Information Processing Letters. Since 1996, he has devoted to writing texts and published more than thirty books with Prentice Hall. His popular computer science texts are widely adopted in the world.
Dr. Liang was elected a Java Champion in 2005 by Sun Microsystems and has given lectures on Java internationally.

Need help? Get in touch

Pearson+

All in one place. Pearson+ offers instant access to eTextbooks, videos and study tools in one intuitive interface. Students choose how they learn best with enhanced search, audio and flashcards. The Pearson+ app lets them read where life takes them, no wi-fi needed. Students can access Pearson+ through a subscription or their MyLab or Mastering course.

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable by deleting your cookies.

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â