7.5.2 Class Members
The members of a class consist of the members introduced by its class member declarations and the members inherited from its direct base class.
A class member declaration may have Public, Protected, Friend, Protected Friend, or Private access. When a class member declaration does not include an access modifier, the declaration defaults to Public access, unless it is a variable declaration; in that case it defaults to Private access.
The scope of a class member is the class body in which the declaration occurs. If the member has Friend access, its scope extends to the class body of any derived class in the same program, and if the member has Public, Protected, or Protected Friend access, its scope extends to the class body of any derived class in any program.
ClassMemberDeclaration ::= NonModuleDeclaration | EventMemberDeclaration | VariableMemberDeclaration | ConstantMemberDeclaration | MethodMemberDeclaration | PropertyMemberDeclaration | ConstructorMemberDeclaration