1. Concepto de Clase.

Anuncio
INGENIERIA DE SISTEMAS
PROGRAMACION II
U.A.T.F.
Programación Orientada a Objetos
¿QUE SON LAS CLASES Y QUE SON LOS OBJETOS?
Las clases son el núcleo de Java, definen la forma y naturaleza de un Objeto.
1. Concepto de Clase.
Clase es una representación de un objeto en particular, las clases se utilizan para crear objetos de
ese tipo de clase en particular.
PARTES DE UNA CLASE
Una clase está conformada básicamente por nombre, atributos (variables) y funciones
(operaciones o métodos).
-
Empleado
Nombre de la clase
Código
Nombre
Sueldo
Fecha_ingreso
Atributos de la clase
crearNuevo()
generarCodigo()
…….
Funciones de la clase
Declaración de clases en java
[public] class Nombre_de_Clase
{
// atributos
// funciones
}
Nota- Las clases que no tienen la función principal main(), no se pueden ejecutar, sólo deben
ser compiladas, y así generarán el archivo .class.
Por ejemplo una clase Rectangulo que tiene los atributos de base y altura y la función obtenerArea:
Rectangulo
-
int base
int altura
Nombre de la clase
Atributos de la clase
void setDatos(int b, int a)
int getArea()
.
Funciones de la clase
INGENIERIA DE SISTEMAS
PROGRAMACION II
U.A.T.F.
La declaración de esta clase en java seria:
class Rectangulo
{
int base;
int altura;
void setDatos(int b, int a)
{
base=b;
altura=a;
}
int getArea()
{
return(base*altura);
}
}
2. Objetos
Un objeto (en ingles instance) es un ejemplar concreto de una clase. Las clases son como tipos de
variables, mientras que los objetos son como variables concretas de un tipo determinado.
Los objetos se crean a partir de clases con la sentencia
para el objeto)
new (se reserva espacio de memoria
Rectangulo objeto1=new Rectangulo();
CLASE
OBJETO
Por ejemplo a partir de la clase Rectangulo podemos crear más de un objeto de ese tipo de clase,
como se muestra a continuación crearemos 2 objetos a los cuales les llamaremos objeto1 y objeto2
class prueba
{
public static void main(String args[])
{
Rectangulo objeto1=new Rectangulo();
objeto1.setDatos(4,3); //enviamos base y altura a objeto1
System.out.println(objeto1.getArea()); //visualizamos el área del objeto1
Rectangulo objeto2=new Rectangulo();
objeto2.setDatos(9,2); //enviamos base y altura a objeto2
System.out.println(objeto2.getArea()); //visualizamos el área del objeto2
}
}
EJEMPLOS DE PROGRAMAS CON CLASES Y OBJETOS
INGENIERIA DE SISTEMAS
PROGRAMACION II
U.A.T.F.
1. Crear una clase Mascota y una clase de prueba donde se cree un objeto de tipo Mascota.
Mascota
nombre
especie
edad
propietario
class Mascota {
String nombre;
String especie;
int edad;
String propietario;
void setDatos(String n,String e,int ed,String p)
{
nombre=n;
especie=e;
edad=ed;
propietario=p;
}
setDatos()
}
class prueba {
public static void main(String[] args) {
Mascota m=new Mascota();
m.registrar("firulais","perro",12,"Juan Perez");
System.out.print(m.nombre);
System.out.print(m.especie);
System.out.print(m.edad);
System.out.print(m.propietario);
}
}
2. Realice la clase Alumno
Alumno
nombre
nota
setDatos()
mostrar()
Posteriormente realice las siguientes acciones:
a) Crear un objeto al1 de tipo Alumno.
b) Crear un objeto al2 de tipo Alumno.
c) Visualice todos los datos de al1.
d) Modifique el nombre de al1
e) Visualice el nombre de al1.
class Alumno {
String nombre;
int nota;
void setDatos(String n,int t)
{
nombre=n;
nota=t;
}
void mostrar()
{
System.out.println("nombre "+nombre);
System.out.println("Nota "+nota);
}
}
INGENIERIA DE SISTEMAS
PROGRAMACION II
U.A.T.F.
class prueba {
public static void main(){
Alumno al1=new Alumno(); //a) Crear un objeto al1 de tipo Alumno.
al1.setDatos("luis",40);
Alumno al2=new Alumno(); //b)Crear un objeto al2 de tipo Alumno.
al2.setDatos("marco",60);
al1.mostrar(); //c)Visualice todos los datos de al1.
al1.nombre="manuel"; //d)Modifique el nombre de al1
System.out.print(al1.nombre); //e)Visualice el nombre de al1.
}
}
3. Programa que permite insertar N datos en un vector y visualice los mismos en forma invertida
Vector
int A[]
int cant
void crear(int n)
void insertar(int x)
void mostrarInvertido()
public class Vector {
int A[]; //A es un vector de numeros enteros
int cant=0; // cant es la cantidad de datos que hay en el vector
void crear(int n){ //crear recibe un numero que sera el tamaño del vector
A=new int[n]; //se crea el vector de tamaño n
}
void insertar(int x){ //recibe un numero que es insertado el vector
A[cant]=x;
cant++;
}
void mostrarInvertido(){
for(int i=cant-1;i>=0;i--)
System.out.print(A[i]+" ");
}
}
import java.util.*;
public class prueba {
public static void main(String[] args) {
Scanner en=new Scanner(System.in);
Vector v=new Vector();
int N=en.nextInt(); //se inserta el tamaño del vector por teclado
v.crear(N); //se envia el tamaño al vector
for(int i=0;i<N;i++)
v.insertar(en.nextInt());
v.mostrarInvertido();
}
}
4. Programa que permite insertar N nombres en un vector y posteriormente visualiza los
datos y la cantidad de nombre que empiezan con la letra A. (Mediante la clase Lista)
Lista
String A[]
int cant
void crear(int x)
void insertar(String x)
void mostrar()
int getIniciaA()
INGENIERIA DE SISTEMAS
PROGRAMACION II
public class Lista {
String A[];
int cant=0;
void crear(int x){
A=new String[x];
}
void insertar(String x){
A[cant]=x;
cant++;
}
void mostrar(){
for(int i=0;i<cant;i++)
System.out.print(A[i]+" ");
}
int getIniciaA(){
int c=0;
for(int i=0;i<cant;i++)
if(A[i].charAt(0)=='A')
c++;
return c;
}
}
import java.util.*;
public class prueba {
public static void main(String[] args) {
Scanner en=new Scanner(System.in);
Lista l=new Lista();
int N=en.nextInt();
l.crear(N);
for(int i=0;i<N;i++)
l.insertar(en.next()); //inserta por teclado nombres
l.mostrar();
System.out.print(l.getIniciaA());
}
}
U.A.T.F.
Descargar