La web de consultoriajava.com, la web de los auténticos expertos en Java

Ir a inicio

Declaración de objetivos

Contratación

Know-How Java

Know-How de Negocio

Cartas abiertas

Contactar


Servicios habituales

Análisis y Diseño

Aportación de Know-How

Arquitecto J2EE

Auditoria de Proyectos

Extreme Programming

Formación experta

Gestión de proyectos

Preparación de equipos

Refactoring de sistemas

Reingeniería de proyectos

Selección de personal


Ayuda para novatos

Artículos publicados

Ejemplos de código

English   Castellano

Errores típicos al trabajar con Java

10 errores típicos al empezar con Java

Atención: Está visitando una sección de nuestro sitio ideada y redactada para programadores junior en J2EE, si precisa de soporte experto pongase en contacto con nosotros. Solo consultas comerciales, muchas gracias.

10 errores típicos al empezar con Java (dedicado a nuestros queridos alumnos):

1. Liarse con lo que es estático y lo que no es.

Resumiendo: Los atributos y metodos por defecto son NO estáticos. Si tu indicas que algo es static eso quiere decir que dicho atributo o método es accesible a nivel de clase, no a nivel de objeto.

Puedes acceder a un atributo estático desde un metodo no estático, pero no puedes acceder a un atributo no estático desde un metodo estático sin crearte previamente un objeto de la clase que tiene ese atributo.

2. Comparar cadenas como si fueran tipos básicos.

Para comparar el contenido de dos objetos entre si (por ejemplo dos cadenas) no puedes usar ==, esto compara las referencias a memoria de ambos objetos, que no es lo que solemos pretender. Para comparar objetos usa un metodo de dicha clase (en el caso de String, el metodo equals).

3. (Dedicado a los que vienen de C o C++) ¿Paso por valor o por referencia?

Resumiendo muchisimo: Los tipos básicos en Java se pasan por valor, los objetos por referencia, los arreglos (el array típico) va por valor (ojo, que ArrayList es una clase y por lo tanto van por referencia).

En cualquier caso, intenta que tus metodos devuelvan el elemento que modifiquen en el "return".

4. Excepción por puntero nulo

Cuando quieres acceder a un objeto necesitas reservar memoria: Una cosa es declarar un objeto y otra cosa es que el objeto tenga memoria.

5. Como nombrar variables y metodos

Las clases van con mayuscula primera letra y el resto con minuscula (excepto en nombres de clase compuestos por mas de una palabra). Los metodos y atributos van todo con minuscula excepto en nombres compuestos que a partir de la segunda palabra van con mayuscula.

Ejemplos de nombre de clase: Conexion, CuentaBancaria. Ejemplos de nombre de metodo: getEdad(), calcularSaldo().

6. Sin un IDE no se puede compilar un programa Java

¿¿!!?? ¿Hasta este punto hemos llegado que no podemos compilar clases con un archivo de proceso por lotes (.bat en Windows y .sh en Linux)y el jdk?

7. No puedo acceder a un atributo de otra clase

Revisa la visibilidad del atributo en cuestion: si no pone nada entonces es por defecto visible en el propio paquete, pero no en otros paquetes. Podrías hacer público el atributo en cuestión o mejor todavia: hacer el atributo privado y codificar métodos de acceso a dicho atributo (si no es mucho pedir claro) :).

8. el metodo main no me funciona

La cabecera del metodo main debe respetarse tal cual se muestra aqui: public static void main (String args[]), lo único que puedes cambiar es el nombre del parametro del main pero tampoco te lo recomendamos. Si no respetas esa cabecera la Java Virtual Machine no sabe donde empezar a ejecutar tu código.

9. no poner parentesis en un metodo sin parametros

Aunque un metodo no tenga parametros es obligatorio poner los parentesis de apertura y cierre.

10. las clases están en el paquete por defecto

Para empezar a programar puedes prescindir de poner tus clases en paquetes, pero si estas trabajando en un entorno comercial, por favor, pon tus clases en paquetes que tengan un nombrado apropiado al entorno en el que te encuentras.