Java - download.e- · PDF file...

Click here to load reader

  • date post

    19-Jun-2020
  • Category

    Documents

  • view

    3
  • download

    0

Embed Size (px)

Transcript of Java - download.e- · PDF file...

  • Java® 7th Edition

    by Barry Burd, PhD

  • Java® For Dummies®, 7th Edition Published by: John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030-5774, www.wiley.com

    Copyright © 2017 by John Wiley & Sons, Inc., Hoboken, New Jersey

    Published simultaneously in Canada

    No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without the prior written permission of the Publisher. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/ permissions.

    Trademarks: Wiley, For Dummies, the Dummies Man logo, Dummies.com, Making Everything Easier, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and may not be used without written permission. Java is a registered trademark of Oracle America, Inc. Android is a registered trademark of Google, Inc. All other trademarks are the property of their respective owners. John Wiley & Sons, Inc. is not associated with any product or vendor mentioned in this book.

    LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE.  NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT.  NEITHER THE PUBLISHER NOR THE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAPPEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.

    For general information on our other products and services, please contact our Customer Care Department within the U.S. at 877-762-2974, outside the U.S. at 317-572-3993, or fax 317-572-4002. For technical support, please visit https://hub.wiley.com/community/support/dummies.

    Wiley publishes in a variety of print and electronic formats and by print-on-demand. Some material included with standard print versions of this book may not be included in e-books or in print-on-demand. If this book refers to media such as a CD or DVD that is not included in the version you purchased, you may download this material at http://booksupport.wiley.com. For more information about Wiley products, visit www.wiley.com.

    Library of Congress Control Number: 2017932837

    ISBN: 978-1-119-23555-2; 978-1-119-23558-3 (ebk); 978-1-119-23557-6 (ebk)

    Manufactured in the United States of America

    10 9 8 7 6 5 4 3 2 1

    http://www.wiley.com http://www.wiley.com/go/permissions http://www.wiley.com/go/permissions https://hub.wiley.com/community/support/dummies#_blank http://booksupport.wiley.com http://www.wiley.com https://hub.wiley.com/community/support/dummies

  • Contents at a Glance Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    Part 1: Getting Started with Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 CHAPTER 1: All about Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 CHAPTER 2: All about Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 CHAPTER 3: Using the Basic Building Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    Part 2: Writing Your Own Java Programs . . . . . . . . . . . . . . . . . . . . . 65 CHAPTER 4: Making the Most of Variables and Their Values . . . . . . . . . . . . . . . . . . . . 67 CHAPTER 5: Controlling Program Flow with Decision-Making Statements . . . . . . . . 105 CHAPTER 6: Controlling Program Flow with Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

    Part 3: Working with the Big Picture: Object-Oriented Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 CHAPTER 7: Thinking in Terms of Classes and Objects . . . . . . . . . . . . . . . . . . . . . . . . 161 CHAPTER 8: Saving Time and Money: Reusing Existing Code . . . . . . . . . . . . . . . . . . . 197 CHAPTER 9: Constructing New Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

    Part 4: Smart Java Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 CHAPTER 10: Putting Variables and Methods Where They Belong . . . . . . . . . . . . . . . 259 CHAPTER 11: Using Arrays to Juggle Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 CHAPTER 12: Using Collections and Streams (When Arrays Aren’t

    Good Enough) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 CHAPTER 13: Looking Good When Things Take Unexpected Turns . . . . . . . . . . . . . . 351 CHAPTER 14: Sharing Names among the Parts of a Java Program . . . . . . . . . . . . . . . 383 CHAPTER 15: Fancy Reference Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409 CHAPTER 16: Responding to Keystrokes and Mouse Clicks . . . . . . . . . . . . . . . . . . . . . . 427 CHAPTER 17: Using Java Database Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

    Part 5: The Part of Tens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 CHAPTER 18: Ten Ways to Avoid Mistakes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 CHAPTER 19: Ten Websites for Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463

    Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465

  • Table of Contents v

    Table of Contents INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    How to Use This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Conventions Used in This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 What You Don’t Have to Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Foolish Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 How This Book Is Organized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

    Part 1: Getting Started with Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 Part 2: Writing Your Own Java Program . . . . . . . . . . . . . . . . . . . . . . . . 4 Part 3: Working with the Big Picture: Object-Oriented Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Part 4: Smart Java Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Part 5: The Part of Tens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

    Icons Used in This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Beyond the Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6 Where to Go from Here . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

    PART 1: GETTING STARTED WITH JAVA . . . . . . . . . . . . . .