Está en la página 1de 11

• Declarar o definir métodos y atributos:

1 class C{
2
3 // Esto es declarar o definir un método
4 public void m() { }
5
6 // Esto es declarar o definir un atributo
7 String atrName;
8
}
9
• Inicializar:

Se inicializan las variables y quiere decir darles un valor inicial.


1 class C{
2
3 //Tres ejemplos de inicialización de variables
4
5 String name = "James Oliver Rigney";
6
7 Integer edad = null;
8
9 C obj1 = new C();
10
}
11
• Implementar:

Ponerle a un método las {} o las {} y código.


1
class C{
2
3 // Ejemplos de implementar métodos:
4
5 public void m1(){}
6
7 void m2(){
8
9 System.out.println("2 + 2 = " + 4);
10
}
11
12 }
13

***Yo entiendo que la instancia de un objeto es cuando creamos un nuevo objeto y


le reservamos un espacio en la memoria:
Object obj = new Object();

***Para devolver un valor o referencia en un método se utiliza la palabra reservada: return. Pero,
¿sabías que aún cuando declaramos el método como void, podemos usar la palabra
reservada return dentro del método? Obviamente no podemos devolver nada, no tendría sentido
según hemos declarado el método, pero en este caso, return, nos ayudará a terminar de forma
abrupta la ejecución de ese método y evitar que siga ejecutando código y consumiendo recursos.
Al terminar un método con return, se devuelve el control de ejecución del programa al hilo o
método que haya realizado la llamada.
Por ejemplo, supongamos un método muy simple que acepte un parámetro de entrada entero,
pero imponiendo que éste debe ser mayor que cero:
void enteroPositivo(int a){
if (a<=0)
return;
else {
//Código que realiza una tarea intensiva para el
procesador
//...
}
}
Como véis simplemente estamos haciendo un return, pero no estamos devolviendo nada. De
esta forma, si el valor de ‘a’ no es mayor que 0, el método terminará su ejecución sin consumir
más tiempo y recursos.

***El método equals(), se utiliza para comparar dos objetos. Ojo no


confundir con el operador ==, que ya sabemos que sirve para comparar
tambien, equals compara si dos objetos apuntan al mismo objeto.

Equals() se usa para saber si dos objetos son del mismo tipo y tienen los
mismos datos. Nos dara el valor true si son iguales y false si no.

***Metodo toString()
Este metodo se usa para convertir los objetos a una cadena.

Por ejemplo, se puede extraer el entero contenido en un objeto Integer.

Este método también se puede sobreescribir, o redefinir, para convertir


los objetos definidos a cadenas.
***Respuesta: que significa != null

Complementado la respuesta...

Significa que estás comparando que el atributo u objeto está o no


instanciado, es decir, que ha sido declarado, pero no inicializado.

Declaración de un objeto:
String varString;

Inicialización:
varString = "";

Hay que decir que al declarar un objeto, el valor que toma por
defecto es el que le corresponda de acuerdo al tipo de dato que
debe recibir. Esto es: si un objeto es tipo String el valor por
defecto asignado es "", pero no significa null.

El valor null quiere decir que lo has declarado e inicializado al


mismo tiempo, pero en la memoria virtual de java no se le asigna
un espacio "fìsico" hasta que no sea llamado posteriormente. La
diferencia principal a mi parecer es esa.

Ahora, que si te refieres a qué es lo que quiere decir el operador


!=, significa diferente de, no aplicable cuando quieres comparar el
contenido de Strings.

En tu caso estás comparando que alguna variable no sea igual a


null, o sea que esté vacía. Si esto era lo que buscabas lo anterior
puede servir como dato curioso a alguien
***Una referencia en cualquier lenguaje de programación hace alución a
la posición en memoria RAM que tiene dicha variable u objeto, su
referencia en memoria quiere decir.
***Al llamar a “new” estamos reservando en memoria el espacio
necesario para todos los atributos de nuestro objeto, ahora la
referencia ya no será null sino una dirección de memoria guardada en
nuestra variable person invisible para nosotros y realmente no nos
tendría que preocupar cual es esa dirección.

***En SQL, NULL no es un valor. Es un estado que indica que el valor de ese item
es desconocido o no existente. No es cero o blanco o una “cadena vacía” y no se
comporta como ninguno de esos valores. Pocas cosas en SQL llevan a tanta
confusión como NULL, y será difícil de entender mientras no entiendas la siguiente
simple definición: NULL significa desconocido.

***Length en java es utilizado para determinar el tamaño de un arreglo ya sea


vector o matriz, siendo ésta una variable pública que está presenta en cualquier
arreglo, al hacer una llamada a esta variable siempre se retornará una entero
(int). Cuando queremos escribir o leer sobre un vector y no sabemos su tamaño
exacto, es fácil encontrar su tamaño mediante la variable length, para acceder
a esta variable es necesario escribir el nombre del vector, un punto y length,
ejemplo:

int vector[]=new int[22];

for(int i=0;i<vector.length){
//Hacer algo
}

Herencia
Entonces… ¿cómo declaramos una lista? Pues seguimos la siguiente estructura:
***List ejemploLista = new ArrayList();

Este tipo de lista puede almacenar cualquier tipo de dato, pero este enfoque ya ha
quedado obsoleto. Se prefiere que se designe el tipo de dato que se va a
almacenar. Entonces para declarar una lista donde guardaremos datos
tipo String, hacemos lo siguiente:
***List<String> ejemploLista = new ArrayList<String>();

Con nuestra lista creada podemos empezar a introducir datos en ella.


Supongamos que queremos agregar los siguientes nombres: Juan, Pedro, José,
María, Sofía.

Hacemos lo siguiente:

1*** List<String> ejemploLista = new ArrayList<String>();


2 ejemploLista.add("Juan");
3 ejemploLista.add("Pedro");
4 ejemploLista.add("José");
5 ejemploLista.add("María");
6 ejemploLista.add("Sofía");

Es posible además agregar el índice en el que queremos agregar dicho elemento.


Podemos obtener la cantidad de elementos que posee la lista:
***ejemploLista.size();

Para consultar la lista se utiliza

***ejemploLista.get(0);

Donde 0 es el índice en el que se encuentra la información que queremos. En este


caso, el índice 0 vendría siendo Pedro.

Si deseamos imprimir en consola los elementos de la lista:


System.out.println(ejemploLista);

Esto nos producirá la siguiente salida:

*** return:
Por ejemplo, supongamos un método muy simple que acepte un parámetro de entrada entero,
pero imponiendo que éste debe ser mayor que cero:
void enteroPositivo(int a){
if (a<=0)
return;
else {
//Código que realiza una tarea intensiva para el
procesador
//...
}
}
Como véis simplemente estamos haciendo un return, pero no estamos devolviendo nada. De
esta forma, si el valor de ‘a’ no es mayor que 0, el método terminará su ejecución sin consumir
más tiempo y recursos.

***

También podemos imprimir todos los elementos de la lista de forma individual


con la ayuda de un ciclo for.
***** for (int i = 0; i <= ejemploLista.size() - 1; i++) {
System.out.println(ejemploLista.get(i));}
1
2
3

**objetos: Para redondear estas ideas, imaginemos que tenemos estacionado en


nuestra cochera un Ford Focus color azul que corre hasta 260 km/h. Si pasamos
ese objeto del mundo real al mundo del software, tendremos
un objeto Automóvil con sus características predeterminadas:

Marca = Ford
Modelo = Focus
Color = Azul
Velocidad Máxima = 260 km/h

***Cuando a las características del objeto le ponemos valores decimos que


el objetotiene estados. Las variables almacenan los estados de un objeto en un
determinado momento.

***Definición teórica: Un objeto es una unidad de código compuesto


de variables y métodos relacionados.

***Todo objeto del mundo real tiene 2


componentes: características y comportamiento.Por ejemplo, los automóviles
tienen características (marca, modelo, color, velocidad máxima, etc.)
y comportamiento (frenar, acelerar, retroceder, llenar combustible, cambiar llantas,
etc.).
***La clase es un modelo o prototipo que define las variables y métodos comunes
a todos los objetos de cierta clase. También se puede decir que una clase es una
plantilla genérica para un conjunto de objetos de similares características.

***Por otro lado, una instancia de una clase es otra forma de llamar a un objeto.
En realidad no existe diferencia entre un objeto y una instancia. Sólo que el objeto
es un término más general, pero los objetos y las instancias son ambas
representación de una clase.

*** Sobrecarga de Metodos: Varios métodos en una misma clase tengan el mismo
nombre
***Las variables de clase le pertenecen a la definición de la clase. Para definir una
se hace uso de la palabra clave static como modificador.
public class Car {

public static int total = 0;

public Car() {
total++;
}

public static int getTotal() {


return this.total;
}
}
***Las variables de instancia son aquellas que se declaran en una clase
pero sin la palabra reservada static
public class Book {

private int total = 0;

public Book() {
total++;
}

public int getTotal() {


return this.total;
}

public void setTotal(int total) {


this.total = total;
}

*** diferencia entre print y println


Cuando quieras escribir texto que te aparezca un texto al lado del otro en lugar de
debajo del otro usa System.out.print

Como ves la diferencia con System.out.println son las dos letras "ln" al final,
preciasamente esas letras son la abreviatura de line, de ahí que println signifique
"escribir por consola e introducir un salto de línea".
*** Diferencia entre print() y println()
La primer pregunta que surge al ver los métodos útiles para salida de
datos en Java es en qué se diferencian (print() vs println()),
básicamente ambos son útiles para mostrar texto por pantalla y la
única diferencia es que println() muestra el texto y luego deja un
salto de línea (como si presionara enter) mientras que print() no lo
hace, veamos un ejemplo para conocer bien la diferencia:

public class Salida


{
public static void main(String[] args)
{
System.out.println("Hola usuario
bienvenido");
System.out.println("A continuación se
muestra una cuenta regresiva");

for (int i = 10; i >= 1; i--)


{
System.out.println(i);//Se muestra cada
valor de i (de 10 al 1)
}

System.out.println("Ahora, otra cuenta


regresiva");

for (int i = 10; i >= 1; i--)


{
System.out.print(i);//Se muestra cada
valor de i (de 1 a 10)
}
}
}

Muy bien, si ejecutamos este código, vamos a ver que el primer ciclo
imprime los números del 10 al 1 dejando una línea entre cada
número, mientras que el segundo imprime todos los número
continuos sin dejar ningún espacio entre
ellos.

Ahora bien, a veces es necesario imprimir en pantalla mensajes más


complicados y necesitamos hacer uso de variables para ello y
componer mensajes, así que veamos un ejemplo de otras formas de
imprimir datos en Java.

Concatenando y mostrando variables por pantalla

public class Salida


{
public static void main(String[] args)
{
System.out.println("Hola usuario
bienvenido");

String dia = "Lunes";


System.out.println("Hoy es " + dia); //Se
componen mensajes usando el + (concatenar)
int hora = 12;

System.out.println("Son las " + hora + " en


punto");

System.out.println("Dentro de 2 horas serán


las " + hora + 2 + " en punto");//Esta línea está
mal

System.out.println("Dentro de 2 horas serán


las " + (hora + 2) + " en punto");//Esta línea si
muestra el resultado de 12 + 2
}
}

En el anterior código vimos que podemos incluir nuestros propios


mensajes unidos con valores de variables y que los podemos unir
(concatenar) con el operador + (como si estuviéramos sumando
texto). Pero hay un detalle importante, hay que ser cuidadosos al
momento de concatenar números y operaciones numéricas
(especialmente la suma) pues podríamos tener errores. Si nos fijamos
en el penúltimo println() quisimos poner hora + 2 sin embargo Java
entendió que queríamos unir (concatenar) el valor de hora con un
dos, dándonos como resultado un 122 en vez del 14 que
esperábamos, para solucionar esto, debemos poner la operación
matemática entre paréntesis, para que Java comprenda que
queremos que primero realice esa operación de suma y luego lo
concatene, obteniendo así un 12 + 2 = 14 como esperábamos.

*** creación de objetos:


una clase es como un modelo ,y q de ese modelo se ban a imprimirmuchos objetos q tenga
ese mismo modelo,una clase puede tener muchos objetos ,y todos los objetos q se crean
toman los mismos atributos de la clase q se crea,un objetos puede ser si hablamos de clase
carro,un objeto1 puede ser ,un carro marca huawei,color verde y un objeto2 puede ser ,un
carro marca Ferrari,color negro;nos damos con este ejemplo q los objetos 1 y ,tiene los
mismos atributos pero diferentes valor de los atributo.

*** instanciar:
Basicamente instanciar un objeto es sinonimo de "crearlo". Cuando lo defines indicas sus
propiedades, sus metodos... es un objeto (una variable tambien es un objeto) "ideal"... Cuando
lo instancias pasa a ser "real".

Por ejemplo... un objeto form es la definicion de un formulario... sabemos las propiedades y


metodos que tiene. Es un objeto "ideal"... abstracto. Pero si "creas" un formulario llamado
frmContabilidad... estamos hablando de un formulario ESPECIFICO. Es una instancia de la
clase generica form. Has "instanciado" un objeto que tiene un espacio de memoria... que tiene
propiedades con valores "concretos" y con metodos que se comportan de una determinada
manera basado en la clase form.

En forma burda... algo parecido a la alegoria de las cavernas de Platon. La clase form existe en
el mundo de las ideas... todos sabemos lo que es. El "objeto" frmContabilidad es una instancia
de esa clase. Ya no hablamos de algo generico sino de algo especifico. La clase es generica...
el objeto es especifico. FrmContabilidad es la instancia de la clase form.

Es decir. Instanciar es crear algo especifico de una definicion generica.

En la forma mas basica, si defines un variable entera es solo eso... una variable entera.
Cuando le asignas el valor 20... ya no es solo una variable entera. Tiene un valor definido...
puedes accederla en memoria y cambiar su valor... puedes usarla para calculos...

Tecnicamente hablando, es cuando se utiliza un constructor para darle vida a algo previamente
definido. Ya sea usando Create() o NewObject() dependiendo del lenguaje que uses.

Cuando llamas a frmContabilidad estas instanciando la clase form... cuando lo cierras, estas
destruyendo la instancia de la clase form (no la clase en si misma)

Edito: @Llulian

No estaba conciente de la hora y tuve que salir urgente. No quede conforme con mi explicacion
asi que agrego ahora algo que tal vez lo haga mas entendible.

Si llamas dos veces al mismo formulario. Estas creando DOS instancias del mismo objeto.
Estas instanciandolo dos veces. Puedes por ejemplo modificar el color de fondo de la primera
instancia y dejar el original en la segunda. Para eso debes acceder a la porcion de memoria
que tiene el valor de la propiedad "color de fondo" y modificarla. Para tu pc la existencia real de
un objeto, la instancia, comienza cuando se crea en memoria.

La clase form sigue siendo unica... pero hay dos instancias de la misma.

También podría gustarte