Class method override In Java

class Shape {
    public int getArea() {
        return 0;
    }
}

class Square extends Shape {
    public int sideLength;

    public Square(int sideLength) {
        this.sideLength = sideLength;
    }

    public int getArea() {
        if (sideLength > 0) {
            return sideLength * sideLength;
        }
        //call base class method
        return super.getArea();
    }
}

Square square = new Square(5);
int area = square.getArea();
//area is 25