Skip to Main Content
Java™ Puzzlers: Traps, Pitfalls, and Corner Cases
book

Java™ Puzzlers: Traps, Pitfalls, and Corner Cases

by Joshua Bloch, Neal Gafter
June 2005
Beginner to intermediate content levelBeginner to intermediate
312 pages
6h 24m
English
Addison-Wesley Professional
Content preview from Java™ Puzzlers: Traps, Pitfalls, and Corner Cases

8. Classier Puzzlers

The puzzles in this chapter concern inheritance, overriding, and other forms of name reuse.

Puzzle 66: A Private Matter

In this program, a subclass field has the same name as a superclass field. What does the program print?

class Base {    public String className = "Base";}class Derived extends Base {    private String className = "Derived";}public class PrivateMatter {    public static void main(String[ ] args) {        System.out.println(new Derived( ).className);    }}

Solution 66: A Private Matter

A superficial analysis of the program might suggest that it should print Derived, because that is what is stored in the className field of each Derived instance. A deeper analysis suggests that class Derived won’t ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

A Common-Sense Guide to Data Structures and Algorithms, Second Edition, 2nd Edition

A Common-Sense Guide to Data Structures and Algorithms, Second Edition, 2nd Edition

Jay Wengrow
Algorithms, 4th Edition

Algorithms, 4th Edition

Robert Sedgewick, Kevin Wayne

Publisher Resources

ISBN: 032133678XPurchase book