¿Está "bien" agregar la última palabra clave a un método heredado / anulado?

En Android, creo una clase abstracta que extiende View (una clase de Android a la que no tengo acceso). La clase abstracta anula las vistas

 @Override protected final void onDraw(Canvas canvas) { if(conditions) return; // child classes should only draw if this class gives the ok subDraw(canvas); } protected abstract void subDraw(Canvas canvas); 

Sin embargo he añadido la palabra clave final aquí.

El punto es, creo un método abstracto que se supone que las subclases usen en lugar del onDraw. Así que evitar que el onDraw de ser anulado más y funciona.

Sé que hay diseños para hacer esto mejor, sin embargo esto funciona como un encanto sin mucho cambio. Mi pregunta es más en general si haciendo lo anterior tiene efectos secundarios no deseados en tiempo de ejecución u otros problemas?

Sí, técnicamente es una solución limpia. Si usted está absolutamente seguro de que no hay ninguna situación cuando alguien podría querer cambiar cualquier lógica dentro de este método en particular que podría hacer eso.

Además, hay que recordar que este método debe contener la menor lógica posible, ya que no puede ser alterado por ningún descendiente. Si crees que este método crecerá en tamaño (sin usar delegados), no lo finalices.

  • Filtro ListActvity para ArrayAdapter personalizado
  • ¿Cómo puedo analizar una suite de pruebas junit?
  • Org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Campo no reconocido "id" (Criterios de clase), no marcado como ignorable
  • Cookies persistentes de Android HttpClient
  • RxJava HashMap Transformación
  • Ocultar el texto en un botón en android?
  • Cómo ejecutar "callOnClick ()" para Android API 8?
  • Crear una vista compuesta en Android
  • barra de progreso en la parte superior del botón en el problema de diseño relativo en Android Studio
  • Obtener la lista de valores utilizando dom parser en android
  • Prueba de unidad de Android con Retrofit y Mockito
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.