<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">// Does extending a class mean that the subclass
// "remembers" or "knows" assignments made in superclass?

public class extend3 {
    
    public static void main(String args[]) {
	
	Data1 a = new Data1(1);
	System.out.println(a.m);
	/* Output: 1 */

	// Does Data2 store values inside Data1?
	Data2 b = new Data2(2);
	System.out.println(a.m);  // Use object a!
	/* Output: 1 */

	// So, no! Data2 uses the same names for the fields
	// in Data1, but Data2 is a different class
	// Data2 does not refer to Data1!

    } // method main

} // class extend3

class Data1 {
    int m;
    Data1(int i) {
	m = i;
    } // constructor Data1

} // class Data1

class Data2 extends Data1 {
    Data2(int i) {
	super(i);
    } // constructor Data2

} // class Data2

/* output:
1
1
*/
</pre></body></html>