java – Destroying superclasses

when we crush the destructor in a subclass and the destructor of the superclass is not called, the destructor is never called. Does this cause memory lapses?
For example:

class A {
AT () {
System.out.println ("constructor A");
}

@Override
protected void finalize () throws Throwable {
// super.finalize ();
System.out.println ("A destructor");
}
}

class B extends A {
B () {
System.out.println ("constructor B");
}

protected void finalize () throws Throwable {
// super.finalize ();
System.out.println ("destructor B");
}
}

public class Foo {
public static void main (String[] args) {

{
B b = new B ();
}

Runtime runtime = Runtime.getRuntime ();
runtime.gc ();
runtime.runFinalization ();
}
}

The result is:
constructor A
constructor B
destroyer B

Destroyer A is never called. Maybe a memory leak?

Thank you in advance.
cordially

Superclasses, subclasses and constructors

I am looking for help to set up this program. Can someone help?

Create a precipitation of the super-class that takes into account the temperature parameter. The toString () method should return the temperature. There should be a subclass rain that also has a parameter value and getAmount () and toString ()returns the temperature and quantity as methods and a subclass that also has snowDepth as a parameter and getDepth () and toString () * return the temperature and depth * as methods.

Thank you! I look forward to your answer.