In this context, you can consider access specifiers as security specifiers - they determine which variable can be accessed. In contrast, access modifiers are completely different; they indicate how variables should (or should not) be available; e.g. read-only, mutable, etc.
ie, a variable can be publicly available, but read-only, or it can be private and writable - access specifiers have nothing to do with modifiers.
, , #, Microsoft public private " ", volatile readonly " ".