Preface |
|
ix | |
Acknowledgments |
|
xi | |
About the Authors |
|
xiii | |
Introduction |
|
xv | |
The Five-Step Program |
|
xix | |
|
STEP 1 Set Up Your Study Program |
|
|
|
1 What You Need to Know About the AP Computer Science A Exam |
|
|
3 | (6) |
|
|
3 | (1) |
|
Frequently Asked Questions About the Exam |
|
|
4 | (5) |
|
|
9 | (8) |
|
Three Approaches to Preparing for the AP Computer Science A Exam |
|
|
9 | (2) |
|
Calendars for Preparing for Each of the Plans |
|
|
11 | (6) |
|
STEP 2 Determine Your Test Readiness |
|
|
|
|
17 | (42) |
|
Using the Diagnostic Exam |
|
|
17 | (4) |
|
|
21 | (22) |
|
Diagnostic Exam Answers and Explanations |
|
|
43 | (16) |
|
STEP 3 Develop Strategies for Success |
|
|
|
4 Strategies to Help You Do Your Best on the Exam |
|
|
59 | (8) |
|
Strategies for the Multiple-Choice Section |
|
|
60 | (1) |
|
Strategies for the Free-Response Section |
|
|
61 | (6) |
|
STEP 4 Review the Knowledge You Need to Score High |
|
|
|
Unit 0 Background on Software Development |
|
|
67 | (1) |
|
|
68 | (1) |
|
What Is a Software Developer? |
|
|
68 | (1) |
|
What Is OOP (Object-Oriented Programming)? |
|
|
69 | (1) |
|
Viewing the World Through the Eyes of a Software Developer |
|
|
69 | (1) |
|
For the Good of All Humankind |
|
|
69 | (1) |
|
|
70 | (1) |
|
|
70 | (1) |
|
The Software Development Cycle |
|
|
71 | (1) |
|
Designing Class Hierarchy |
|
|
72 | (1) |
|
|
73 | (2) |
|
|
75 | (1) |
|
|
75 | (1) |
|
|
76 | (1) |
|
|
77 | (1) |
|
|
78 | (1) |
|
|
78 | (1) |
|
|
78 | (1) |
|
|
79 | (3) |
|
|
82 | (1) |
|
Modifying Number Variables |
|
|
83 | (3) |
|
|
86 | (1) |
|
|
87 | (1) |
|
|
88 | (1) |
|
|
89 | (2) |
|
|
91 | (2) |
|
|
93 | (1) |
|
The Java API and the AP Computer Science A Exam Subset |
|
|
94 | (1) |
|
|
94 | (1) |
|
|
95 | (1) |
|
A Visual Representation of a string Object |
|
|
96 | (1) |
|
|
96 | (1) |
|
The Correct Way to Compare Two string Objects |
|
|
97 | (1) |
|
|
97 | (5) |
|
|
102 | (1) |
|
|
103 | (1) |
|
|
103 | (2) |
|
|
105 | (2) |
|
|
107 | (1) |
|
|
107 | (1) |
|
Summary of the Integer and Double Classes |
|
|
108 | (1) |
|
|
108 | (2) |
|
|
110 | (3) |
|
|
113 | (4) |
|
Unit 3 Boolean Expressions and if Statements |
|
|
117 | (1) |
|
|
118 | (1) |
|
|
118 | (1) |
|
|
119 | (3) |
|
Precedence of Java Operators |
|
|
122 | (1) |
|
|
122 | (4) |
|
|
126 | (1) |
|
|
126 | (3) |
|
|
129 | (2) |
|
|
131 | (1) |
|
|
132 | (1) |
|
|
132 | (7) |
|
|
139 | (3) |
|
|
142 | (1) |
|
|
142 | (5) |
|
|
147 | (4) |
|
|
151 | (1) |
|
Overview of the Relationship Between Classes and Objects |
|
|
152 | (1) |
|
|
152 | (1) |
|
|
153 | (1) |
|
|
153 | (2) |
|
|
155 | (3) |
|
Putting It All Together: The Circle and CircleRunner Classes |
|
|
158 | (2) |
|
Understanding the Keyword new When Constructing an Object |
|
|
160 | (1) |
|
The Reference Variable Versus the Actual Object |
|
|
161 | (1) |
|
|
162 | (1) |
|
|
163 | (2) |
|
|
165 | (1) |
|
|
166 | (1) |
|
|
167 | (3) |
|
|
170 | (1) |
|
|
171 | (1) |
|
|
171 | (3) |
|
|
174 | (1) |
|
Illegal Argument Exception |
|
|
175 | (1) |
|
|
175 | (3) |
|
|
178 | (6) |
|
|
184 | (5) |
|
|
189 | (1) |
|
What Is a Data Structure? |
|
|
190 | (1) |
|
|
191 | (5) |
|
|
196 | (1) |
|
Why Algorithms Are Important |
|
|
197 | (1) |
|
Algorithm Versus Pseudocode Versus Real Java Code |
|
|
197 | (5) |
|
|
202 | (2) |
|
|
204 | (4) |
|
|
208 | (5) |
|
|
213 | (1) |
|
|
214 | (2) |
|
Important ArrayList Methods |
|
|
216 | (5) |
|
|
221 | (1) |
|
The Accumulate Advanced Algorithm |
|
|
221 | (3) |
|
The Find-Highest Advanced Algorithm |
|
|
224 | (3) |
|
The Twitter-Sentiment-Analysis Advanced Algorithm |
|
|
227 | (3) |
|
The Sequential (or Linear) Search Algorithm |
|
|
230 | (2) |
|
|
232 | (1) |
|
|
233 | (2) |
|
|
235 | (1) |
|
|
236 | (2) |
|
|
238 | (4) |
|
|
242 | (7) |
|
|
249 | (1) |
|
|
249 | (4) |
|
|
253 | (1) |
|
|
253 | (1) |
|
The Find-Highest Algorithm |
|
|
254 | (1) |
|
The Connect-Four Advanced Algorithm |
|
|
255 | (4) |
|
|
259 | (1) |
|
|
260 | (3) |
|
|
263 | (4) |
|
|
267 | (1) |
|
|
268 | (4) |
|
|
272 | (5) |
|
|
277 | (3) |
|
|
280 | (1) |
|
|
281 | (5) |
|
|
286 | (3) |
|
|
289 | (1) |
|
|
290 | (1) |
|
|
291 | (5) |
|
|
296 | (2) |
|
|
298 | (3) |
|
|
301 | (1) |
|
|
302 | (4) |
|
|
306 | (7) |
|
STEP 5 Building Your Test-Taking Confidence |
|
|
|
AP Computer Science A: Practice Exam 1 |
|
|
313 | (2) |
|
AP Computer Science A: Practice Exam 1, Part I (Multiple Choice) |
|
|
315 | (21) |
|
AP Computer Science A: Practice Exam 1, Part II (Free Response) |
|
|
336 | (9) |
|
Practice Exam 1 Part I (Multiple Choice), Answers and Explanations |
|
|
345 | (12) |
|
Practice Exam 1 Part II (Free Response), Answers and Explanations |
|
|
357 | (12) |
|
|
369 | (2) |
|
AP Computer Science A: Practice Exam 2 |
|
|
371 | (2) |
|
AP Computer Science A: Practice Exam 2, Pan I (Multiple Choice) |
|
|
373 | (24) |
|
AP Computer Science A: Practice Exam 2, Part II (Free Response) |
|
|
397 | (11) |
|
Practice Exam 2 Part I (Multiple Choice), Answers and Explanations |
|
|
408 | (11) |
|
Practice Exam 2 Part II (Free Response), Answers and Explanations |
|
|
419 | (12) |
|
|
431 | (2) |
|
|
433 | (2) |
|
|
435 | (2) |
|
Free-Response Scoring Guidelines |
|
|
437 | (2) |
|
|
439 | (2) |
|
List of Required Runtime Exceptions |
|
|
441 | (2) |
|
Language Features and Other Testable Topics |
|
|
443 | (4) |
|
Common Syntax Errors for Beginning Java Programmers |
|
|
447 | (2) |
|
|
449 | |