Huh? The private designation is for OUTSIDE access to the global variables of a class, not internal access.
Update: I get that you are accessing the class within the class. Which, BTW, I never really thought of doing, but cool. Still stand by my point (but I could be wrong, see disclaimer below)
In that "example" (image) I wasn't try to access the variable (directly) but an object of that type.
In the real project I use a loop on a global map that contains "that" type of objects and execute it inside the class.
In short, I access many objects of that type from within the class.
If it didn't work that way you wouldn't be able to access it from anywhere. The idea of a private item is that you can use it within a class but it cannot be seen outside which reduces possible confusion as to what the public interfaces to the class are. Subs and variables in a class should all be private except those that you want the outside world to be able to twiddle with.
You have got to allow access to private variables from public Subs otherwise your class will be divided into public things and private things and the private things will be of no use at all as they cannot accept values from the public side. By only letting the outside world access public things you can control what they can and can't do to your class. Inside the class you can do whatever you want with both public and private things.
If you really mean the difference between class global and class instance variables then that is nothing to do with whether they are private or not - they can be either. Class globals are accessible from any instance of the class, class instances are unique to each instance of a class. Unfortunately B4X does not implement true class global variables.
Erel says (my boldening)
Class_Globals - This sub is similar to the activity Globals sub. These variables will be the class global variables (sometimes referred to instance variables or instance members).