Home > Store

Programmer's Guide to Java? Certification, A: A Comprehensive Primer, 2nd Edition

Register your product to gain access to bonus material or receive a coupon.

Programmer's Guide to Java? Certification, A: A Comprehensive Primer, 2nd Edition

Book

  • Sorry, this book is no longer in print.
Not for Sale

About

Features

  • Provides in-depth coverage of all the important topics, in particular, extensive coverage of ALL the objectives defined for the Sun Certified Programmer for Java TM 2 Platform exam (CX-310-035).
  • Provides advice on how to avoid common pitfalls in mastering the language and passing the exam.
  • Each chapter concludes with review questions.
  • The accompanying CD contains: complete source code for all the examples, solutions for the programming exercises and a complete mock exam with NEW questions.

Description

  • Copyright 2004
  • Edition: 2nd
  • Book
  • ISBN-10: 0-201-72828-1
  • ISBN-13: 978-0-201-72828-6

A new edition of this title is available, ISBN-10: 0321556054 ISBN-13: 9780321556059

Extras

Author's Site

Click for the Author's Web Site related to this title.

Sample Content

Downloadable Sample Chapter

Download the Sample Chapter related to this title.

Table of Contents



List of Tables.


List of Examples.


List of Figures.


Foreword.


Preface.

Writing the Second Edition.

About This Book.

Using the Book.

Book Web Sites.

Request for Feedback.

About the Authors.

Acknowledgments (First Edition).

Acknowledgments (Second Edition).



1. Basics of Java Programming.

Introduction.

Classes.

Declaring Members: Fields and Methods.

Objects.

Class Instantiation.

Object References.

Instance Members.

Invoking Methods.

Static Members.

Inheritance.

Aggregation.

Tenets of Java.

Review Questions.

Java Programs.

Sample Java Application.

Essential Elements of a Java Application.

Compiling and Running an Application.

Review Questions.

Chapter Summary.

Programming Exercises.



2. Language Fundamentals.

Basic Language Elements.

Lexical Tokens.

Identifiers.

Keywords.

Literals.

Integer Literals.

Floating-point Literals.

Boolean Literals.

Character Literals.

String Literals.

White Spaces.

Comments.

Review Questions.

Primitive Data Types.

Integer Types.

Character Type.

Floating-point Types.

Boolean Type.

Review Questions.

Variable Declarations.

Declaring and Initializing Variables.

Object Reference Variables.

Lifetime of Variables.

Initial Values for Variables.

Default Values for Fields.

Initializing Local Variables of Primitive Data Types.

Initializing Local Reference Variables.

Review Questions.

Java Source File Structure.

Review Questions.

The main() Method.

Review Questions.

Chapter Summary.

Programming Exercises.



3. Operators and Assignments.

Precedence and Associativity Rules for Operators.

Evaluation order of operands.

Conversions.

Unary Cast Operator: (type).

Narrowing and Widening Conversions.

Numeric Promotions.

Type Conversion Contexts.

Simple Assignment Operator =.

Assigning Primitive Values.

Assigning References.

Multiple Assignments.

Numeric Type Conversions on Assignment.

Review Questions.

Arithmetic Operators: *, /, %, +, -.

Arithmetic Operator Precedence and Associativity.

Evaluation Order in Arithmetic Expressions.

Range of Numeric Values.

Unary Arithmetic Operators: -, +.

Multiplicative Binary Operators: *, /, %.

Additive Binary Operators: +, -.

Numeric Promotions in Arithmetic Expressions.

Arithmetic Compound Assignment Operators: *=, /=, %=, +=, -=.

Review Questions.

The Binary String Concatenation Operator +.

Variable Increment and Decrement Operators: ++, --.

Increment Operator ++.

Decrement Operator --.

Review Questions.

Boolean Expressions.

Relational Operators: <, <=, >, >=.

Equality.

Primitive Data Value Equality: ==, !=.

Object Reference Equality: ==, !=.

Object Value Equality.

Boolean Logical Operators: !, ^, &, |.

Operand Evaluation for Boolean Logical Operators.

Boolean Logical Compound Assignment Operators: &=, ^=, |=.

Conditional Operators: &&, ||.

Short-circuit Evaluation.

Review Questions.

Integer Bitwise Operators: ~, &, |, ^.

Bitwise Compound Assignment Operators: &=, ^=, |=.

Shift Operators: <<, >>, >>>.

The Shift-left Operator <<.

The Shift-right-with-sign-fill Operator >>.

The Shift-right-with-zero-fill Operator >>>.

Shift Compound Assignment Operators: <<=, >>=, >>>=.

The Conditional Operator ? :.

Other Operators: new, [], instanceof.

Review Questions.

Parameter Passing.

Passing Primitive Data Values.

Passing Object Reference Values.

Passing Array References.

Array Elements as Actual Parameters.

final Parameters.

Program Arguments.

Review Questions.

Chapter Summary.

Programming Exercises.



4. Declarations and Access Control.

Arrays.

Declaring Array Variables.

Constructing an Array.

Initializing an Array.

Using an Array.

Anonymous Arrays.

Multidimensional Arrays.

Review Questions.

Defining Classes.

Defining Methods.

Statements.

Instance Methods and Object Reference this.

Method Overloading.

Constructors.

Default Constructor.

Overloaded Constructors.

Scope Rules.

Class Scope for Members.

Block Scope for Local Variables.

Review Questions.

Packages.

Defining Packages.

Using Packages.

Compiling and Running Code from Packages.

Accessibility Modifiers for Top-level Classes and Interfaces.

Other Modifiers for Classes.

abstract Classes.

final Classes.

Review Questions.

Member Accessibility Modifiers.

public Members.

protected Members.

Default Accessibility for Members.

private Members.

Review Questions.

Other Modifiers for Members.

static Members.

final Members.

abstract Methods.

synchronized Methods.

native Methods.

transient Fields.

volatile Fields.

Review Questions.

Chapter Summary.

Programming Exercises.



5. Control Flow, Exception Handling and Assertions.

Overview of Control Flow Statements.

Selection Statements.

Simple if Statement.

if-else Statement.

switch Statement.

Review Questions.

Iteration Statements.

while Statement.

do-while Statement.

for Statement.

Transfer Statements.

Labeled Statements.

break Statement.

continue Statement.

return Statement.

Review Questions.

Stack-based Execution and Exception Propagation.

Exception Types.

Class Exception.

Class RuntimeException.

Class Error.

Checked and Unchecked Exceptions.

Defining New Exceptions.

Exception Handling: try, catch and finally.

try Block.

catch Block.

finally Block.

throw Statement.

throws Clause.

Review Questions.

Assertions.

assert Statement and AssertionError Class.

Compiling Assertions.

Runtime Enabling and Disabling of Assertions.

Using Assertions.

Review Questions.

Chapter Summary.

Programming Exercises.



6. Object-oriented Programming.

Single Implementation Inheritance.

Object-oriented Programming Concepts.

Review Questions.

Overriding and Hiding Members.

Instance Method Overriding.

Field Hiding.

Static Method Hiding.

Overriding vs. Overloading.

Object Reference super.

Review Questions.

Chaining Constructors using this() and super().

this() Constructor Call.

super() Constructor Call.

Review Questions.

Interfaces.

Defining Interfaces.

Method Prototype Declarations.

Implementing Interfaces.

Extending Interfaces.

Constants in Interfaces.

Review Questions.

Completing the Type Hierarchy.

Assigning, Passing and Casting Reference Values.

Reference Value Assignment Conversions.

Parameter Passing Conversions.

Reference Casting and instanceof Operator.

Converting References of Class and Interface Types.

Review Questions.

Polymorphism and Dynamic Method Lookup.

Review Questions.

Inheritance vs. Aggregation.

Encapsulation.

Choosing between Inheritance and Aggregation.

Review Questions.

Chapter Summary.

Programming Exercises.



7. Nested Classes and Interfaces.

Overview of Nested Classes and Interfaces.

Static Member Classes and Interfaces.

Declaring and Using Static Member Classes and Interfaces.

Accessing Members in Enclosing Context.

Non-static Member Classes.

Instantiating Non-static Member Classes.

Accessing Members in Enclosing Context.

Review Questions.

Local Classes.

Accessing Declarations in Enclosing Context.

Instantiating Local Classes.

Anonymous Classes.

Extending an Existing Class.

Implementing an Interface.

Instantiating Anonymous Classes.

Accessing Declarations in Enclosing Context.

Review Questions.

Chapter Summary.

Programming Exercise.



8. Object Lifetime.

Garbage Collection.

Reachable References.

Facilitating Garbage Collection.

Object Finalization.

Finalizer Chaining.

Invoking Garbage Collection.

Review Questions.

Initializers.

Field Initializer Expressions.

Static Initializer Blocks.

Instance Initializer Blocks.

Constructing Initial Object State.

Review Questions.

Chapter Summary.



9. Threads.

Multitasking.

Overview of Threads.

The Main Thread.

Thread Creation.

Implementing the Runnable Interface.

Extending the Thread Class.

Review Questions.

Synchronization.

Locks.

Synchronized Methods.

Synchronized Blocks.

Review Questions.

Thread Transitions.

Thread States.

Thread Priorities.

Thread Scheduler.

Running and Yielding.

Sleeping and Waking Up.

Waiting and Notifying.

Joining.

Blocking for I/O.

Thread Termination.

Deadlocks.

Review Questions.

Chapter Summary.

Programming Exercises.



10. Fundamental Classes.

Overview of the java.lang package.

The Object Class.

Review Questions.

The Wrapper Classes.

Common Wrapper Class Constructors.

Common Wrapper Class Utility Methods.

Numeric Wrapper Classes.

Character Class.

Boolean Class.

Review Questions.

The Math Class.

Miscellaneous Rounding Functions.

Exponential Functions.

Trigonometry Functions.

Pseudorandom Number Generator.

Review Questions.

The String Class.

Creating and Initializing Strings.

Reading Characters from a String.

Comparing Strings.

Character Case in a String.

Concatenation of Strings.

Searching for Characters and Substrings.

Extracting Substrings.

Converting Primitive Values and Objects to Strings.

Review Questions.

The StringBuffer Class.

Constructing String Buffers.

Reading and Changing Characters in String Buffers.

Constructing Strings from String Buffers.

Appending, Inserting and Deleting Characters in String Buffers.

Controlling String Buffer Capacity.

Review Questions.

Chapter Summary.

Programming Exercises.



11. Collections and Maps.

The Collections Framework.

Core interfaces.

Implementations.

Collections.

Basic Operations.

Bulk Operations.

Array Operations.

Iterators.

Review Questions.

Sets.

HashSet and LinkedHashSet.

Lists.

ArrayList, LinkedList and Vector.

Review Questions.

Maps.

Basic Operations.

Bulk Operations.

Collection Views.

HashMap, LinkedHashMap and Hashtable.

Sorted Sets and Sorted Maps.

The Comparator Interface.

The Comparable Interface.

The SortedSet Interface.

The SortedMap Interface.

TreeSet and TreeMap.

Review Questions.

Implementing the equals(), hashCode() and compareTo() methods.

The equals() method.

The hashCode() method.

The compareTo() method.

Working with Collections.

Synchronized Collection Decorators.

Unmodifiable Collection Decorators.

Sorting Collections.

Searching in Collections.

Singleton Collections.

Other Utility Methods in the Collections Class.

Utility Methods in the Arrays Class.

Abstract Implementations.

Review Questions.

Chapter Summary.

Programming Exercise.



Appendix A. Taking the SCPJ2 1.4 Exam.

Preparing for the programmer exam.

Registering for the exam.

Obtaining an Exam Voucher.

Signing Up for the Test.

Contact Information.

After Taking the Exam.

How the Examination Is Conducted.

The Testing Locations.

Utilizing the Allotted time.

The Exam Program.

The Questions.

Types of Questions Asked.

Types of answers expected.

Topics Covered by the Questions.

Moving on to the developer exam.



Appendix B. Objectives for the SCPJ2 1.4 Exam.


Appendix C. Objectives for the Java 2 Platform Upgrade Exam.


Appendix D. Annotated Answers to Review Questions.


Appendix E. Solutions to Programming Exercises.


Appendix F. Sample Exam.


Appendix G. Number Systems and Number Representation.

Number Systems.

Binary, Octal and Hexadecimal Number System.

Converting Binary Numbers to Decimals.

Converting Octal and Hexadecimal Numbers to Decimals.

Relationship between Binary, Octal and Hex Numbers.

Converting Decimals.

Converting Decimals to Binary Numbers.

Converting Decimals to Octal and Hexadecimal Numbers.

Representing Integers.

Calculating 2's Complement.



Appendix H. Using the CD.

Contents of the CD.

Installing the Programs.

Using the Programs.



Index. 0201728281T05222003

Preface

Writing the Second Edition

The exam for the Sun Certified Programmer for Java 2 (SCPJ2) Platform has changed considerably since the first edition of this book was published. The most noticeable change is the removal of GUI and I/O from the exam, and shifting of emphasis towards the core features of the language. In our opinion, the new exam demands an even greater understanding and actual experience of the language, rather than mere spewing of factual details. Proficiency in the language is the key to success.

In preparing for the second edition of the book, we have seriously taken into consideration the evolution of the SCPJ2 exam.

The I/O and GUI topics of the first edition have been eliminated, as they have no relevance for the SCPJ2 exam. These topics are more relevant for the Sun Certified Developer for Java 2 (SCDJ2) Platform exam, and therefore delegated to a possible future volume on the Developer exam topics.

Since emphasis of the SCPJ2 exam is on the core features of Java, the second edition provides an even greater in-depth coverage of the relevant topics. The book covers not just the exam objectives, but also supplementary topics which have a bearing on the exam.

The second edition is still a one-source guide for the SCPJ2 exam: it provides a mixture of theory and practice for the exam. The book can be used to learn Java, accomplish the SCPJ2 exam, and afterwards come in handy as a language reference. To facilitate preparation for the exam, the second edition includes a CD with a wide range of additional resources. The book also has an appendix devoted to the SCPJ2 Upgrade exam.

We have taken into consideration the reader input and feedback we have received. The many hours spent in handling the deluge of e-mail have not been in vain. Every single e-mail is appreciated and is hereby acknowledged.

Preparing the second edition dispelled all our illusions about second editions being, to put it colloquially, a piece of cake. Every sentence from the first edition has been weighed carefully, and not many paragraphs have escaped rewriting. Basic elements of UML (Unified Modeling Language) are also extensively employed in this edition. Numerous new review questions have been added. In covering the new topics and expanding the existing ones, new examples, figures and tables were also specifically created for the second edition.

About This Book

This book provides an extensive coverage of the Java programming language and its core APIs (Application Programming Interfaces), with particular emphasis on its syntax and usage. The book is primarily intended for professionals who want to prepare for the Sun Certified Programmer for Java 2 Platform exam (referred to as the SCPJ2 exam), but it is readily accessible to any programmer who wants to master the language. For both purposes, it provides an in-depth coverage of essential features of the language and its core APIs.

There is a great and increasing demand for certified Java programmers. Sun Microsystems has defined the SCPJ2 exam, which professionals can take to validate their skills. The certification provides the IT industry the standard to use for hiring such professionals, and allows the professionals to turn their Java skills into credentials that are important for career advancement.

The book helps the reader master all core features of the Java language, and this mastering of the language can culminate in accomplishing the exam. It provides an extensive coverage of all the objectives defined for the exam by Sun. Since the exam objectives are selective, they do not cover many of the essential features of Java. The book provides extensive coverage of additional topics that every Java programmer should master in order to be proficient in this field. In this regard, the book is a comprehensive primer for learning the Java programming language.

This book is not a complete reference for Java, as it does not attempt to list every member of every class from the Java SDK (System Development Kit) API documentation. Its purpose is not to document the Java SDK APIs. It is also not a book on teaching programming techniques. Its emphasis is on the Java programming language features, their syntax and correct usage.

The book assumes a background in programming. We believe the exam is accessible to any programmer who works through the book. A Java programmer can easily skip over material which is well understood, and concentrate on parts that need reinforcing, whereas a programmer new to Java will find the concepts explained from basic principles.

Each topic is explained and discussed thoroughly with examples, and backed by review questions and exercises to reinforce the concepts. The book is not biased toward any particular platform, but provides platform-specific details where necessary.

Using the Book

The reader can choose a linear or a non-linear route through the book, depending on his or her programming background. Non-Java programmers wishing to migrate to Java can read Chapter 1, which provides a short introduction to object-oriented programming concepts, and the procedure for compiling and running Java applets and standalone applications. For those preparing for the SCPJ2 exam, the book has a separate appendix providing all the pertinent information on taking the exam.

The table of contents, listings of tables, examples and figures, and a comprehensive index facilitate locating topics discussed in the book.

In particular, we draw attention to the following features of the book:

Exam and Supplementary Objectives

  • Exam objectives are stated clearly at the start of every chapter, together with any supplementary objectives.
  • The objectives are defined by Sun and are organized into major sections, detailing the curriculum for the examination.
  • The book is organized into chapters that logically follow the order of these major sections.
  • The objectives are reproduced in a separate appendix where, for each section of the syllabus, study notes are included to point the reader to topics essential for the exam.
  • We believe that the supplementary objectives are important to the ultimate goal of mastering the language.
  • Review Questions

    Review questions are provided after every major topic, in order to test and reinforce the material. These review questions reflect the kind of questions that can be asked on the actual exam. Annotated answers to the review questions are provided in a separate appendix.

    Example Source CodeWe encourage experimenting with the code examples in order to reinforce the material from the book. These can be downloaded from the book web site.Java code is written in a mono spaced font. Lines of code in the examples or in code snippets are referenced in the text by a number, which is specified by using a single-line comment in the code. For example, in the code snippet below, the call to the method doSomethingInteresting() hopefully does something interesting at (1).

    // ...
    doSomethingInteresting(); // (1)
    // ...

    Names of classes and interfaces start with an uppercase letter. Names of packages, variables and methods start with a lowercase letter. Constants are all in uppercase letters.

    Chapter Summary

    Each chapter concludes with a summary of the topics, pointing out the major concepts discussed in the chapter.

    Programming Exercises

    Programming exercises at the end of each chapter provide the opportunity to put concepts into practice. Solutions to the programming exercises are provided in a separate appendix.

    Sample Exam

    A complete sample exam is provided in a separate appendix, which the reader can try when she is ready.

    Java 2 SDK API

    A vertical gray bar is used to highlight methods and fields found in the classes of the core Java APIs.Any explanation following the API information is also similarly highlighted.

    In order to obtain optimal benefit from using this book in preparing for the SCPJ2 exam, we strongly recommend installing the latest version (at least 1.4) of the SDK and its accompanying API documentation. The book focuses solely on Java 2, and does not acknowledge previous versions.

    Java 2 Platform Upgrade Exam

    For those who have taken the Sun Certified Programmer for Java 2 Platform 1.2 Exam, and would like to prepare for the Sun Certified Programmer for Java 2 Platform Upgrade Exam, we have provided an appendix with details of the upgrade exam. The appendix contains the upgrade exam objectives, and for each section of the syllabus, study notes are included to point the reader to topics essential for the upgrade exam.

    Accompanying CD

    The accompanying CD contains a wealth of information to help prepare for the exam, and provides numerous sample exams for the candidate to test her skills. The software included simulates near exam-like conditions in order to acquaint the candidate with the exam environment.



    0201728281P05222003

    Foreword

    Download the Foreword file related to this title.

    Index

    Download the Index file related to this title.

    Updates

    Submit Errata

    More Information

    InformIT Promotional Mailings & Special Offers

    I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.

    Overview


    Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

    This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

    Collection and Use of Information


    To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

    Questions and Inquiries

    For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

    Online Store

    For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

    Surveys

    Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

    Contests and Drawings

    Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.

    Newsletters

    If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

    Service Announcements

    On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

    Customer Service

    We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

    Other Collection and Use of Information


    Application and System Logs

    Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

    Web Analytics

    Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

    Cookies and Related Technologies

    This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

    Do Not Track

    This site currently does not respond to Do Not Track signals.

    Security


    Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.

    Children


    This site is not directed to children under the age of 13.

    Marketing


    Pearson may send or direct marketing communications to users, provided that

    • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
    • Such marketing is consistent with applicable law and Pearson's legal obligations.
    • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
    • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

    Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

    Correcting/Updating Personal Information


    If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.

    Choice/Opt-out


    Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

    Sale of Personal Information


    Pearson does not rent or sell personal information in exchange for any payment of money.

    While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

    Supplemental Privacy Statement for California Residents


    California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

    Sharing and Disclosure


    Pearson may disclose personal information, as follows:

    • As required by law.
    • With the consent of the individual (or their parent, if the individual is a minor)
    • In response to a subpoena, court order or legal process, to the extent permitted or required by law
    • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
    • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
    • To investigate or address actual or suspected fraud or other illegal activities
    • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
    • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
    • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.

    Links


    This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

    Requests and Contact


    Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

    Changes to this Privacy Notice


    We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

    Last Update: November 17, 2020