1   
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class User:
    def __init__(self, roles):
        self.__roles = roles
    def addRole(self, role):
        self.__roles.append(role)
    def listRoles(self):
        for role in self.__roles:
            print(role.getName())

class Role:
    def __init__(self, roleName):
        self.__roleName = roleName
    def getName(self):
        return self.__roleName

class AdminRole(Role):
     pass                         # empty class -> "pass" is necessary

class ViewerRole(Role):
     pass

u1 = User([AdminRole("Administrator"), ViewerRole("Viewer")])
print("User has roles:")
u1.listRoles()
Last modified: Friday, 9 September 2022, 6:33 PM