¿Cómo puedo restringir mis clientes con los métodos seleccionados de la clase?

pensador:

Digamos que tengo 1 clase completa con alrededor de 20 métodos diferentes que proporcionan funcionalidades.

Ahora tenemos varios clientes que utilizan esta clase, pero nosotros queremos que tengan acceso restringido.

Para, por ejemplo -

Cliente 1 - Obtiene acceso a metodo1 / m3 / M5 / M7 / M9 / M11

El cliente 2 - Obtiene acceso a metodo2 / M4 / M6 / M8 / M10 / M12

¿Hay alguna manera de que pueda limitar este acceso?

Una solución que pensé:

Crear 2 nuevas clases que se extienden métodos de la clase dominante y de anulación que no son accesibles y lanzar excepciones de ellos. Pero entonces, si tercio cliente con diferentes requerimientos, tenemos que crear una nueva subclase para ellos.

Hay alguna otra manera de hacer esto?

Tex:

Se puede crear una Interface1que define los métodos sólo para Client1, y una Interface2que define los métodos sólo para Client2. Luego, su clase implementa Interface1y Interface2.

Cuando se declara Client1que puede hacer algo como: Interface1 client1. Con este enfoque, client1se accede sólo los métodos de esta interfaz.

Espero que esto ayude.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=308564&siteId=1
Recomendado
Clasificación