¿Qué significa usar un "." Sin un objeto en Android (o java)?

No estoy seguro, pero esto es probablemente una cuestión de java y no es específico de Android. En el SDK de Android, cuando escribo un "." en una línea en blanco, me muestra un menú de opciones:

introduzca la descripción de la imagen aquí

La clase MyThread se declara dentro de la clase MainActivity (que extiende Actividad e implementa otras interfaces para la interfaz de usuario). Normalmente este menú aparece cuando "." operador se coloca después de un objeto, y muestra los datos de miembro y las funciones declaradas en la clase, de la que ese objeto es una instancia de. Sin embargo, no hay ningún objeto aquí, pero todavía me está mostrando este menú. Por qué esta haciendo eso? Si solo selecciono una función y la coloco aquí, ¿cuál es la función del objeto que se ejecuta?

Además, la colocación de este "." en la posición 1 me muestra un error. La posición 1 se encuentra dentro de la clase MainActivity. ¿Por qué muestra error aquí, pero no en la posición mostrada en la imagen?

El aparecerá la ayuda de autocompletar en eclipse cuando estés dentro de tu clase (la posición 1 está fuera de tu clase, por lo que dará un error / advertencia en su lugar) – todos los métodos que ves son métodos que la clase hereda de sus superclases, y están disponibles para su uso o anulación. Todos los objetos de las clases que se hacen en Java son en realidad subclases de Objeto, y ya que se extendió el hilo también, obtendrá una buena cantidad de diferentes métodos de los que elegir.

EDITAR:

El sólo funcionará en clases o métodos internos, parecería – si intenta usar Ctrl + Space en la posición 1, debería traer un menú contextual similar al que obtiene . en otros lugares. También vale la pena mencionar que esto es en realidad una característica de Eclipse (generalmente conocido como asistencia automática o asistencia de contenido), el IDE, y no el lenguaje de programación Java en sí. Para ser justos, la mayoría de los IDEs buenos tendrán características similares, así que es un error fácil de hacer 🙂

Puedes echar un vistazo a esto y probar tus preferencias bajo

Window -> Preferences -> JAVA -> Editor -> ContentAssist , aunque yo recomiendo no juguetear con los ajustes por defecto a menos que tenga algo muy específico que desea cambiar.

En la configuración predeterminada de eclipse, el punto llama a la ayuda de contenido, habrá popup de métodos que se puede sobrescribir de la clase padre, que es Thread en tu código, y de toda clase se extiende Object, hay métodos de Object class que se pueden sobrescribir , puede ver que desde el comentario gris después del nombre del método.

La característica se denomina auto completado. La mayoría del IDE apoya eso.

 What does using a “.” without an object in Android (or java) mean? 

Su pregunta es un poco ambigua. Acaba de colocar un punto y IDE ha intentado completarlo automáticamente. Pero en general, incluso en una línea negra si ejecuta completar automáticamente (Ctrl + espacio) en eclipse / Intellij IDEA obtendrá el mismo popup.

Generalmente dot significa acceder a una variable estática o invocar un método. Así IDE da posible desplegable.

El es uno de los accesos directos a la asistencia de contenido, por eso se ve algunas sugerencias sobre lo que podría posiblemente a continuación. Cuando escribió una variable de objeto y luego un punto, sugiere métodos o campos públicos de ese objeto. cuando se escribe en una nueva línea que sugieren los métodos listos para ser superados en la clase actual …

De forma predeterminada, el carácter ( también hace lo mismo:

 Completion can be triggered by user request or can be automatically triggered when the "(" or "." character is typed: public char[] getCompletionProposalAutoActivationCharacters() { return new char[] { '.', '(' }; } 

de: Asistencia de ayuda de contenido de Eclipse

En java "." es un operador que se utiliza para relacionar cualquier instancia, variable, methord o etc … a cualquier instancia, clase o tipo de interfaz.

  • Obtener la altura de STATUS BAR
  • Compartir el libro de contactos de la aplicación java con CardDAV
  • Buenos patrones de diseño para codificar muchas solicitudes HTTP en Android
  • Cómo analizar los resultados de JSON de Unirest llamada
  • No se pudo encontrar appcompat_v7.apk
  • ¿Hay RxJava equivalente a Handler.postDelayed (Runnable r, delayMillis largo)
  • Android: CountDownTimer salta el último onTick ()!
  • StartActionMode devolver null
  • Convierta el tiempo dado en formato String a segundos en Android
  • Android: sobreescribir onPause y onResume - forma correcta
  • Solicitud de switch / case con boolean
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.