AP CSA 3.3 Debugging: The Field That Stayed Zero

Unit 3: Class Creation · Lesson 3.3 · Debugging

The Field That Stayed Zero

Anatomy of a Class. This is not a blank editor: it is someone else's attempt. Find what is wrong, fix it, and submit to be graded against hidden test cases.

Why debugging is its own skill

Every getter returns zero, the constructor clearly assigns the values, and the compiler is perfectly happy. The constructor is assigning them to brand new local variables that vanish the instant it finishes, leaving the real fields untouched at their defaults.

What is wrong with it

  1. The constructor declares int width and int height inside its own body. Those are new local variables, not the fields, so the fields keep their default value of 0. Remove the declarations so the assignments reach the fields.
  2. getArea returns the literal 0 rather than computing anything. Make it return the actual area.
  3. The field declarations at the top of the class are correct. Do not add or rename them.

The program reads

A width and a height.

The program should print

Three lines: the width, the height, and the area.

Worked examples

These show what the FIXED program should print. There are more cases you cannot see, and they use different values, so patching around just these numbers will fail.

Example 1 input
3 4
Example 1 output
3
4
12
Example 2 input
1 1
Example 2 output
1
1
1

Your answer

Main.java

Input for the Run button

Run sends whatever is in the code box below, bugs and all, so you can see the crash or the wrong answer for yourself before you fix anything.


  

  

Stuck?

Hint 1

A type in front of a name is a DECLARATION: it creates something new. Without the type it is an ASSIGNMENT to something that already exists. int width = w; inside the constructor creates a second, temporary width that disappears at the closing brace.

Hint 2

Numeric fields default to 0 and object fields default to null. Getting 0 back from every getter is the signature of fields that were never assigned, and it is worth recognizing instantly.

Hint 3

Deleting two words fixes the constructor. If you renamed the fields or added new ones, back that out first.

Where to go next

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

[email protected]

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at [email protected]