Ejemplo Crear clases

//Instanciar una clase en un objeto
		Auto bmw=new Auto();
		
		Auto seat;
		
		// Puedo acceder a las cosas que he definido en la clase
		bmw.color="Azul metalizado";
		bmw.arrancar();

		
		// Para usar un objeto lo tengo que instanciar
		seat=new Auto();
		
		seat.color="Verde";
		Auto[] concesionario= {bmw,seat,new Auto(),new Auto(),new Auto()};
		concesionario[0].color="Rojo";
		
		System.out.println(bmw.color);
		
		
		seat=new Auto();
		// seat ----> [color,arrancar] (Auto@372f7a8d)
		System.out.println(seat);
		Auto copia=seat; // no copio el objeto, apuntan al mismo sitio
		// Si cambio uno cambio el otro y viceversa
		// seat ----> [color,arrancar]
		// copia ------^
		System.out.println(copia); //Auto@372f7a8d
		
		Auto clonado=new Auto();
		clonado.color=bmw.color;

Auto miCoche = new Auto();
		miCoche.color = "Rosa";
		miCoche.arrancar();
		miCoche.estado();
		miCoche.acelerar();
		miCoche.estado();
		for (int i = 0; i < 10; i++) {
			miCoche.acelerar(200);
		}
		miCoche.estado();
		
		Alumno ana=new Alumno();
		ana.nombre="Ana Pi";
		ana.notas.addAll(Arrays.asList(1,2,3,4,5,6));
		
		System.out.println(ana.media());
// Definición de la clase, no es un objeto
public class Auto {
	public String color;
	int velocidad;
	int limiteVelocidad = 100;

	public void arrancar() {
		velocidad = 0;
		System.out.println("Brum brum ");
	}

	public void acelerar() {
		acelerar(10);

	}

	public void acelerar(int cantidad) {
		velocidad += cantidad;
		if (velocidad > 100) {
			velocidad = 100;
		}

	}

	public void frenar() {
		if (velocidad > 10) {
			velocidad -= 10;
		}
	}

	public void estado() {
		System.out.println("Vamos a " + velocidad + " por horaa!!");
	}
}

import java.util.ArrayList;
public class Alumno {
	// El public es un modificador de acceso
	// Quiere decir que cualquiera puede acceder al valor
	public String nombre;
	// Tenemos tres sabores de protección
	// public, protected y private
	private ArrayList<Integer> notas;

	// Los parámetros que queremos poner al crear la clase
	public Alumno(String nombre) {
		// Las cosas que queremos que se ejecuten
		// cuando creamos la clase
		// this.nombre es el nombre del objeto
		// nombre es el parámetro que le pasamos
		this.nombre = nombre;
		notas = new ArrayList<Integer>();
	}

	public Alumno() {
		// Llamando a la sobrecarga del constructor
		this("anonimo");

	}

	public int ponNota(int nota) {
		// Me aseguro de que mis notas están entre 0  10
		if (nota > 0 && nota <= 10) {
			notas.add(nota);
		}
		return notas.size();
	}

	public double media() {

		double total = 0;
		// Desde dentro de la clase si que puedo acceder
		for (int nota : notas) {
			total += nota;
		}
		return total / this.notas.size();
	}
}

Publicado por

Avatar del usuario

Juan Pablo Fuentes

Formador de programación y bases de datos