I know it protects assembly but what does that mean?
as IF I make a script with internal class, internal variables, some other script can access them all.
I find internal like public.
thanks in advance.
I know it protects assembly but what does that mean?
as IF I make a script with internal class, internal variables, some other script can access them all.
I find internal like public.
thanks in advance.
internal makes classes and their members accessible in the scope of the same assembly only. To test this, you can create a sample script:
public class InternalTest
{
public int number;
}
and put it into Assets/Plugins folder. It will compile into a separate assembly, and you can reference it from any of your default scripts:
var it = new InternalTest { number = 1 };
This will compile without any problem. But if you change the whole InternalTest
class or number
field to internal, you’ll get compile error, because you try to access a class/member not visible to other assemblies.