Private class members in Java

class Shape {
    private static int maxUID;
    private int uid;

    public int GetUID() {
        return uid;
    }

    public Shape() {
        uid = ++maxUID;
    }
}

class Square extends Shape {
    public Square() {
        uid++; //<- Error
    }
}

Square square = new Square();
int uid = square.GetUID();
//uid is 1
uid = square.uid//<- Error