Introducción a clases en C++

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Introducción a clases en C++"

Transcripción

1 Introducción a clases en C++ Pablo Brusco Disclaimer: Este apunte no es autocontenido y fue pensado como un repaso de los conceptos, no para aprenderlos de aquí directamente. Los aportes básicos fueron extraidos de Savitch, Walter (2007): Resolución de problemas con C++. Ed. Pearson, México. PP Stroustrup, Bjarne (2000): The C++ Programming Language. Ed. Addison-Wesley, USA. 1. Introducción Hasta ahora, al momento de programar en C++ solo fue posible utilizar los tipos de datos predefinidos, como int, char, ofstream, etc. Pero bajo la especificación de problemas que utiliza tipos compuestos de datos, nos encontramos con la necesidad de contar con formas de representarlos. En C++, una de las maneras de hacerlo es a través de clases. 2. Definiciones 2.1. Definición de clases y funciones miembro Hay muchas definiciones posibles para el concepto de clase, pero mucha gente coincide en que una clase es un plano o prototipo que define variables y métodos comunes a todos los objetos de un cierto tipo. Un objeto es un componente de software que contiene variables y métodos y que es usado para modelar algún aspecto de la vida real. Es una abstracción de la realidad que encapsula variables permitiendo acceder a ellas únicamente a través de métodos 1. Por lo tanto, el estado de un objeto está representado por el contenido de sus variables y su comportamiento está definido por sus métodos. Tambíen, podemos decir que un objeto es la suma de su estado, su comportamiento y su identidad (todo objeto debería tener un identificador único). Función miembro es aquella que está declarada en ámbito de clase. Son similares a las funciones habituales, con la salvedad de que el compilador realizara el proceso de Decoración de nombre. es decir cambiara el nombre de la función añadiendo un identificador de la clase en la que est declarada. Además, las funciones miembro reciben implícitamente un parmetro adicional: El puntero this, que referencia al objeto que ejecuta la función. Estas funciones se invocan accediendo primero al objeto al cual refieren, con la sintaxis: miobjeto.mifuncionmiembro(). Entonces, dentro de un programa en C++, la definición de una clase debe ser una definición de tipo de datos que describa los tipos de valores que las variables pueden contener y también la naturaleza de las funciones miembro. En el programa del cuadro 1, se presenta un ejemplo de definición de clase. El tipo Circulo que se presenta ahí es una definición de clase para objetos cuyos valores son figuras geométricas como circulo de radio 2 en el origen del plano. En esta definición de Circulo, el radio se registra como un float y la posición como un conjunto de enteros. La clase 1 Quizás sea una definición un tanto purista, pero podemos tomarla por el momento 1

2 2.1 Definición de clases y funciones miembro 2 DEFINICIONES Circulo tiene una función miembro llamada imprimir, que no tiene argumentos y envía a la pantalla el valor del radio y la posición desde el origen. Vemos ahora como está constituida la clase Circulo. Por el momento hagamos caso omiso de la linea que contiene la palabra clave public. Esta línea simplemente dice que las variables y funciones miembro no tienen restricciones. Por otro lado, se ve claramente la estructura sintáctica que tiene una clase. Esto es, la palabra clave Class seguida de llaves y un punto y coma al final. Dentro de las llaves encontramos las variables de la clase (radio, posicionx y posiciony ) y la función imprimir. Las definiciones de las funciones aparecen en cualquier lugar (podemos mezclar las variables y las funciónes, pero siempre podemos convenir enumerar las funciones antes que las variables por ejemplo). Los objetos (es decir, variables) de un tipo de clase se declarar de la misma manera que las variables de los tipos predefinidos y que las variables de estructura. Cuadro 1 #include <iostream > using namespace std ; // programa para demostrar un ejemplo de c l a s e muy s e n c i l l o. class C i r c u l o public : void imprimir ( ) ; f l o a t r a d i o ; int posicionx ; int posiciony ; ; void C i r c u l o : : imprimir ( ) cout << C i r c u l o de r a d i o << r a d i o << en ( << posicionx <<, << posiciony << ) << endl ; int main ( ) C i r c u l o c i r c ; // d e c l a r a c i o n de 3 c i r c u l o s. C i r c u l o c i r c 1, c i r c 2 ; // se d e c l a r a n de l a misma manera que l a s v a r i a b l e s de t i p o s p r e d e f i n i d o s cout << E s c r i b a e l r a d i o d e l c i r c u l o : ; c i n >> c i r c. r a d i o ; cout << E s c r i b a l a p o s i c i o n en x d e l c i r c u l o : ; c i n >> c i r c. posicionx ; cout << E s c r i b a l a p o s i c i o n en y d e l c i r c u l o : ; c i n >> c i r c. posiciony ; cout << Usted i n g r e s o un c i r c u l o como e l s i g u i e n t e : << endl ; c i r c. imprimir ( ) ; i f ( c i r c. posicionx == c i r c. posiciony && c i r c. posicionx == 0) cout << Este c i r c u l o s e encuentra en e l o r i g e n de coordenadas ; Dialogo de ejemplo: Escriba el radio del circulo: 13 Escriba la posicion en x del circulo: 0 Escriba la posicion en y del circulo: 0 Usted ingreso un circulo como el siguiente: Circulo de radio 13 en (0,0) Este circulo se encuentra en el origen de coordenadas 2

3 2.2 Funciones de una clase 2 DEFINICIONES 2.2. Funciones de una clase Cuando se define una función miembro, la definición debe incluir el nombre de la clase, porque podría haber dos o más clases que tengan funciones con el mismo nombre. Es por eso que la funcion imprimir tiene el encabezado: void Circulo::imprimir() Quizás resulte raro que aparezca el nombre de la clase seguido de dos puntos, veamos la definición de este operador El operador punto y el de resolución de alcance. Se emplean con los nombres de miembros para especificar de qué cosa son miembros. Por ejemplo, supongamos que hemos declarado una clase llamada Circulo y declaramos un objeto llamado circ de la siguiente manera: Circulo circ; Usamos el operador punto para especificar un miembro del objeto circ. Por ejemplo, imprimir es una función de la clase Circulo; la siguiente llamda de función desplegara los valores de datos almacenados en el objeto circ: circ.imprimir(); Empleamos el operador de resolución de alcance :: para especificar el nombre de clase cuando damos la definición de una función void Circulo::imprimir() Recordar que el operador de resolución de alcance :: se usa con un nombre de clase, mientras que el operador punto se usa con un objeto de esa clase Variables en definiciones de funciones En la implementación de la funcion Circulo::imprimir() empleamos los nombres de las variables de la clase, radio, posicionx y posiciony solos, sin dar primero el objeto y el oprador punto. Esto no es tan extraño como podría parecer a primera vista. A estas alturas, simplemente estamos definiendo la función imprimir. Esta definición aplicará a todos los objetos de tipo Circulo, pero aún no conocemos los nombres de los objetos de ese tipo que usaremos, por lo que no podemos dar sus nombres. Cuando invoquemos la función, como en c1.imprimir(); todos los nombres de miembros de la definición de función se especializarán al nombre de la clase invocadora. Por lo tanto, la llamada de función anterior equivale a los siguiente: cout << Circulo de radio << c1.radio << en ( << c1.posicionx <<, << c1.posiciony << ) << endl; En la definición de una función propia de una clase, podemos emplear los nombres de todos los miembros de esa clase (tanto los valores como las funciones) sin usar el operador punto. 3

4 2.4 Miembros públicos y privados 2 DEFINICIONES 2.4. Miembros públicos y privados Los tipos predefinidos como double no se implementan como clases en C++, pero la gente que escribió el compiladores de C++ que utilizamos sí diseñó una forma de representar valores de tipo double en su computadora. Es posible implementar el tipo double de diversas formas. De hecho, diferentes versiones de C++ implementan el tipo de formas ligeramente distintas, pero si trasladamos nuestro programa en C++ de una computadora a otra que tiene una implementación diferente, el programa deberá funcionar correctamente 2. Las clases son tipos que definimos, y tales tipos deben comportarse tan bien como los tipos predefinidos. Podemos construir una biblioteca con nuestras propias definiciones de tipos de clases y usar nuestros tipos como si fueran tipos predefinidos. Por ejemplo, podrámos colocar cada definición de clase en un archivo aparte y copiarla en cualquier programa que use ese tipo. Es recomendable que nuestras definiciones de clase separen las reglas para usar la clase y los detalles de la implementacioón de la clase de forma tan definitiva como se hizo con los tipos predefinidos. Si modificamos la implementación de una clase (por ejemplo, alterando algunos detalles de la definición de una función miembro con el fin de que las llamadas a esa funcioón sean más rápidas) no deberá ser necesario modificar ninguna otra parte de los programas. Para alcanzar este ideal, necesitamos describir una característica más de las definiciones de clase. Si miramos la clase Circulo, podemos observar que decidimos representar al radio como un double y las posiciones como int. Posteriormente, podríamos decidir cambiar la representación del la posición, de dos variables de tipo int a 2 de tipo float que indiquen la distancia y el ángulo desde el origen del circulo. Este detalle de implementación no deberá preocupara un programador que usa el tipo Circulo. Desde luego, si modificamos la forma en que la clase representa la posición, tambíen deberemos modificar la implementación de la función miembro imprimir, pero eso es todo lo que habrá que cambiar. No deberá ser necesario modificar ninguna otra parte de un programa que use nuestra definición de la clase Circulo. Lamentablemente, el programa del cuadro 1 no cumple con este ideal. Por ejemplo, si sustituimos la variable posicionx por otra llamada distancia, no habrá ninguna variable miembro llamada posicionx, y será necesario cambiar las partes del programa que obtienen entradas, así como la instrucción if. Con una clase ideal, deberemos poder modificar los detalles de implementación de la clase, y lo único que deberemos tener que cambiar en cualquier programa que use la clase serán las definiciones de las funciones miembro. A fin de alcanzar este ideal es necesario tener suficientes funciones miembro como para nunca tener que acceder a las variables miembro directamente, sino s olo a traveés de las funciones miembro. Entonces, si modificamos las variables miembro, sólo tendremos que alterar las definiciones de éstas y no tendremos que modificar ninguna otra parte de nuestros programas. En el cuadro 2 hemos redefinido la clase Circulo de modo que tenga suficnentes funciones miembro para hacer todo lo que queremos que hagan nuestros programas. Así el programa no tiene que hacer referencia directamente a ninguna variable de la clase. Si examinamos el código del cuadro 2, veremos que el único lugar en que se usan los nombres de variables (angulo y distanciaalorigen) es en las definiciones de las funciones de la clase. No hay referencias a circ.angulo fuera de las implementaciones de las funciones miembro. El programa tiene una nueva característica nueva diseñada para asegurar que ningún programador que use la clase hará alguna vez referencia directa a cualquiera de las variables propias. Esta nueva característica es la inclusión de la palabra private. Todos los nombres de variables que se enumeran despuesés de esta línea son miembros privados, lo que significa que no se puede acceder directamente a ellos en el programa (fuera de las funciones de la clase). Si intentamos acceder a ellas, el compilador generará un mensaje de error. (Ya sea desde el main o desde funciones que no pertenezcan a la clase Circulo). Notar que también es posible incluir funciones en la parte privada de la declaración de la clase. Estas son las llamadas funciones miembro privadas. Por último, se incluyo la palabra clave const al final de ciertas funciones. En caso de aparecer, indica que la función a la que decora dejará el objeto con el mismo estado (las variables se mantienen) en que se encontraba antes de llamar a la función. Es decir, se mantiene constante. 2 Hay ocasiones en que no se alcanza plenamente este ideal, pero en el mundo ideal debe alcanzarse y, al menos en el caso de programas sencillos, se alcanza incluse en el mundo imperfecto en el que vivimos. 4

5 2.4 Miembros públicos y privados 2 DEFINICIONES Cuadro 2 #include <iostream > using namespace std ; class P o s i c i o n public : void setearx ( int valx ) ; void seteary ( int valy ) ; int X( ) const ; int Y( ) const ; private : int x ; int y ; ; // implementacion de metodos de l a c l a s e Posicion void P o s i c i o n : : setearx ( int valx ) x = valx ; void P o s i c i o n : : seteary ( int valy ) y = valy ; int P o s i c i o n : : X( ) constreturn x ; int P o s i c i o n : : Y( ) constreturn y ; class C i r c u l o public : void entrada ( ) ; void imprimir ( ) const ; void f i j a r R a d i o ( double r a d i o ) ; void f i j a r P o s i c i o n ( int x, int y ) ; int obtenerradio ( ) const ; ; private : P o s i c i o n c a l c u l a r P o s i c i o n ( f l o a t ang, f l o a t d i s t ) const ; // pasa de angulo d i s t a n c i a a Posicion f l o a t c a l c u l a r A n g u l o ( P o s i c i o n p ) const ; // i n v e r s a s de c a l c u l a r p o s i c i o n f l o a t c a l c u l a r D i s t a n c i a A l O r i g e n ( P o s i c i o n p ) const ; int diametro ; f l o a t angulo ; f l o a t d i s t a n c i a A l O r i g e n ; // implementacion de metodos de l a c l a s e C i r c u l o void C i r c u l o : : imprimir ( ) const cout << C i r c u l o de r a d i o << diametro / 2 ; cout << en ( << c a l c u l a r P o s i c i o n ( angulo, d i s t a n c i a A l O r i g e n ).X( ) ; cout <<, << c a l c u l a r P o s i c i o n ( angulo, d i s t a n c i a A l O r i g e n ).Y( ) << ) << endl ; void C i r c u l o : : entrada ( ) cout << E s c r i b a e l r a d i o d e l c i r c u l o : ; int rad ; c i n >> rad ; P o s i c i o n pos ; f l o a t x, y ; cout << E s c r i b a l a p o s i c i o n en x d e l c i r c u l o : ; c i n >> x ; pos. setearx ( x ) ; cout << E s c r i b a l a p o s i c i o n en y d e l c i r c u l o : ; c i n >> y ; pos. seteary ( y ) ; angulo = c a l c u l a r A n g u l o ( pos ) ; d i s t a n c i a A l O r i g e n = c a l c u l a r D i s t a n c i a A l O r i g e n ( pos ) ; diametro = rad 2 ; void C i r c u l o : : f i j a r R a d i o ( double rad ) diametro = rad 2 ; 5

6 2.4 Miembros públicos y privados 2 DEFINICIONES void C i r c u l o : : f i j a r P o s i c i o n ( int x, int y ) P o s i c i o n pos ; pos. setearx ( x ) ; pos. seteary ( y ) ; angulo = c a l c u l a r A n g u l o ( pos ) ; d i s t a n c i a A l O r i g e n = c a l c u l a r D i s t a n c i a A l O r i g e n ( pos ) ; int C i r c u l o : : obtenerradio ( ) const return diametro / 2 ; P o s i c i o n C i r c u l o : : c a l c u l a r P o s i c i o n ( f l o a t ang, f l o a t d i s t ) const // implementacion ( pasa de angulo d i s t a n c i a en e l plano a p o s i c i o n e s en e l plano ) f l o a t C i r c u l o : : c a l c u l a r A n g u l o ( P o s i c i o n p ) const // implementacion ( pasa de p o s i c i o n e s en e l plano a angulo ) f l o a t C i r c u l o : : c a l c u l a r D i s t a n c i a A l O r i g e n ( P o s i c i o n p ) const // implementacion ( pasa de p o s i c i o n e s en e l plano a d i s t a n c i a a l o r i g e n ) bool C i r c u l o : : seencuentraenelorigen ( ) return d i s t a n c i a A l O r i g e n == 0 ; int main ( ) C i r c u l o c i r c ; // d e c l a r a c i o n de 1 c i r c u l o. c i r c. entrada ( ) ; cout << Usted i n g r e s o un c i r c u l o como e l s i g u i e n t e : << endl ; c i r c. imprimir ( ) ; i f ( c i r c. seencuentraenelorigen ( ) ) cout << Este c i r c u l o s e encuentra en e l o r i g e n de coordenadas ; 6

7 2.5 Resumen de algunas propiedades de las clases 2 DEFINICIONES 2.5. Resumen de algunas propiedades de las clases Las clases tienen todas las propiedades que describimos para las estructuras y además todas las propiedades asociadas a las funciones miembro. A continuación se muestra una lista de lo que es conveniente tener presente al usar clases: Una clase es una entidad abstracta, es un tipo de clasificación de cosas y define el comportamiento y atributos de un grupo de estructuras y comportamientos similares. Un objeto es una instancia o variable de una clase que se distingue de otros miembros de la clase por sus atributos. Las clases tienen tanto variables miembro como funciones miembro. Un miembro (sea una variables o una función) pueden ser púbilico o privado. Normalmente, todas las variables de una clase se etiquetan como privados. Un miembro privado de una clase sólo se puede utilizar dentro de la definición de una función propia de la misma clase. Una clase puede usar otra clase como tipo de una variable propia. Una función puede tener parámetros formales cuyos tipos sean clases. El valor devuelto por una función puede ser una clase. 7

Introducción a C++ y Code::Blocks

Introducción a C++ y Code::Blocks Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete

Más detalles

Tema: Funciones Virtuales y Polimorfismo.

Tema: Funciones Virtuales y Polimorfismo. Programación II. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Comprender que es ligadura e identificar sus tipos.

Más detalles

Tema: Funciones Virtuales y Polimorfismo.

Tema: Funciones Virtuales y Polimorfismo. Programación II. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Específicos Comprender que es ligadura e identificar

Más detalles

Clases y Objetos en C++

Clases y Objetos en C++ Informática II Clases y Objetos en C++ Introducción Las variables de los tipos fundamentales de datos no son suficientes para modelar adecuadamente objetos del mundo real. alto, ancho y longitud para representar

Más detalles

Tema: Plantillas en C++.

Tema: Plantillas en C++. Programación II. Guía 11 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Plantillas en C++. Objetivos Específicos Conocer los tipos de plantillas Utilizar las plantillas de

Más detalles

Programación Orientada o Objetos

Programación Orientada o Objetos Programación Orientada o Objetos Programación digital II Escuela de Sistemas Facultad de Ingeniería Profesor: Gilberto Diaz Programación Orientada a Objetos En 1970 Dennis Ritchie y Brian Kernigan crearon

Más detalles

Apuntes de Clases (continuación)

Apuntes de Clases (continuación) Apuntes de Clases (continuación) Plantillas: Según va aumentando la complejidad de nuestros programas y sobre todo, de los problemas a los que nos enfrentamos, descubrimos que tenemos que repetir una y

Más detalles

Cómo implementar tus propias funciones en Lenguaje C?

Cómo implementar tus propias funciones en Lenguaje C? Cómo implementar tus propias funciones en Lenguaje C? por Iván Cruz Cuando se realiza un programa, es importante siempre manejar una buena organización del código fuente, debido a que se puede desear incrementar

Más detalles

Introducción a C++ y Code::Blocks

Introducción a C++ y Code::Blocks a C++ y Práctica Imperativo Clase 1 Leopoldo Taravilse Departamento de Computación, FCEyN,Universidad de Buenos Aires. 19 de octubre de 2012 Menú de esta Tarde Funcional Vs. Imperativo (Intérprete Vs.

Más detalles

26 de Octubre del 2013

26 de Octubre del 2013 Hernánz Hernánz OMIJAL 26 Octubre l 2013 Contenidos Hernánz 1 2 3 4 ++ 5 6 7 Hernánz Concepto Un concepto es una ia, algo abstracto. No existe en la naturaleza. Palabras Herramientas que utilizamos para

Más detalles

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Contenidos: 1. Definición de clases 2. Implementación de los métodos 3. Constructores y destructores 4. Objetos

Más detalles

Fundamentos Programación Orientada a Objetos ( POO ) - Parte I Desarrollo de Software

Fundamentos Programación Orientada a Objetos ( POO ) - Parte I Desarrollo de Software República Bolivariana de Venezuela Ministerio de Educación Superior Fundación Misión Sucre Aldea Fray Pedro de Agreda Fundamentos Programación Orientada a Objetos ( POO ) - Parte I 1 Contenido Qué es

Más detalles

Funciones Definición de función

Funciones Definición de función Funciones Definición de función Una función es un bloque de código que realiza una tarea específica. Una función es una porción de programa, identificable mediante un nombre, que realiza determinadas tareas

Más detalles

Tipos Recursivos de Datos

Tipos Recursivos de Datos 1/1 Tipos Recursivos de Datos Josefina Sierra Santibáñez 27 de noviembre de 2016 2/1 Introducción La recursividad no sólo se puede aplicar a la definición de procedimientos (i.e. funciones o acciones),

Más detalles

Programación 1. Tema I. Conceptos y elementos básicos de Programación. Lección 1. Problemas de tratamiento de información, algoritmos y programas

Programación 1. Tema I. Conceptos y elementos básicos de Programación. Lección 1. Problemas de tratamiento de información, algoritmos y programas Programación 1 Tema I. Conceptos y elementos básicos de Programación Lección 1. Problemas de tratamiento de información, algoritmos y programas 1 Problemas, algoritmos y programas Problemas de tratamiento

Más detalles

Lenguaje de Programación

Lenguaje de Programación UG C++ C++ Universidad de Guanajuato Sesión 33 Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos sostenidas o mantenidas juntas en una sola unidad. La unidad es la estructura.

Más detalles

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Programación 1 Tema 3. Información, datos, operaciones y expresiones Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información

Más detalles

Programación 1 Tema 5. Instrucciones simples y estructuradas

Programación 1 Tema 5. Instrucciones simples y estructuradas Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas 2 Instrucción ::= 3 Instrucciones.

Más detalles

Tipos de Datos Recursivos

Tipos de Datos Recursivos 1/1 Tipos de Datos Recursivos Josefina Sierra Santibáñez 15 de mayo de 2018 2/1 Introducción La recursividad no sólo se puede aplicar a la definición de procedimientos (i.e. funciones o acciones), sino

Más detalles

Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones.

Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones. Programación II. Guía 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones. Objetivos Diferenciar sobrecarga de operadores

Más detalles

Informática PRÀCTICA 2 Curs

Informática PRÀCTICA 2 Curs Práctica Nº 2: Estructura general de un programa en C/C++. Introducción a las funciones de Entrada y salida en C++ (cin y cout) sin formato. Objetivos de la práctica: - Presentar la estructura general

Más detalles

Lenguaje de Programación: C++ Funciones

Lenguaje de Programación: C++ Funciones UG C++ Lenguaje de Programación: C++ Universidad de Guanajuato Septiembre 2010 Lenguaje de Programación: C++ Que es una función? Una función es un conjunto de ĺıneas de código que realizan una tarea específica

Más detalles

LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++

LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++ LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++ C++ es un lenguaje de programación diseñado por Bjarne Stroustrup a partir de 1979. La intención de su creación fue ampliar al exitoso lenguaje

Más detalles

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores. Unidad IV Métodos. 4.1 Definición de un método. El polimorfismo, en programación orientada a objetos, se refiere a la posibilidad de acceder a un variado rango de funciones distintas a través del mismo

Más detalles

Introducción a c++ Introducción a la programación EIS Informática III

Introducción a c++ Introducción a la programación EIS Informática III Introducción a c++ Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras. Pueden usarse para crear programas

Más detalles

Sobrecarga de Operadores II

Sobrecarga de Operadores II D é c i m o q u i n t a S e s i ó n Metodologías y Técnicas de Programación II Programación Orientada a Objeto (POO) C++ Sobrecarga de Operadores II 1 Sobrecarga de operadores unitarios (o unarios) Son

Más detalles

U.A.B.C. Facultad de Ingeniería Programación Estructurada UNIDAD III

U.A.B.C. Facultad de Ingeniería Programación Estructurada UNIDAD III UNIDAD III Funciones 3.1 Forma general de una función. C fué diseñado como un lenguaje de programación estructurado, también llamado programación modular. Por esta razón, para escribir un programa se divide

Más detalles

INTRODUCCIÓN A LA POO EN C++

INTRODUCCIÓN A LA POO EN C++ INTRODUCCIÓN A LA POO EN C++ ÍNDICE DEL TEMA 1.- Introducción 2.- Diferencias C/C++ 3.- Programación orientada a objetos 4.- Aspectos avanzados C++ 1 1. Introducción Lenguaje C Lenguaje de propósito general

Más detalles

La Herencia. La primera línea de cada declaración debe incluir la sintaxis siguiente:

La Herencia. La primera línea de cada declaración debe incluir la sintaxis siguiente: La Herencia Es la capacidad de compartir atributos y métodos entre clases. Es la propiedad que permite definir nuevas clases usando como base clases ya existentes. La nueva clase (clase derivada) hereda

Más detalles

Definición de clase: Una clase es un prototipo que define las variables y los métodos de todos los objetos con características comunes.

Definición de clase: Una clase es un prototipo que define las variables y los métodos de todos los objetos con características comunes. Clases y Objetos Java es un lenguaje orientado a objetos que incorpora un gran número de clases predefinidas organizadas en paquetes. La programación en Java supone definir clases de forma jerárquica,

Más detalles

Definición de clase: Una clase es un prototipo que define las variables y los métodos de todos los objetos con características comunes.

Definición de clase: Una clase es un prototipo que define las variables y los métodos de todos los objetos con características comunes. Clases y Objetos Java es un lenguaje orientado a objetos que incorpora un gran número de clases predefinidas organizadas en paquetes. La programación en Java supone definir clases de forma jerárquica,

Más detalles

Nociones básicas sobre C++ Agustín J. González Patricio Olivares ELO-329

Nociones básicas sobre C++ Agustín J. González Patricio Olivares ELO-329 Nociones básicas sobre C++ Agustín J. González Patricio Olivares ELO-329 1 C++ vs C C++ es un lenguaje más actual que C C++ mantiene todo el poder de C agregando características que facilitan la programación.

Más detalles

Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++

Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++ Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++ OBJETIVO En este documento se presentan las construcciones básicas de orientación a objetos del lenguaje de programación C++, y recomendaciones

Más detalles

Programación orientada a objetos I

Programación orientada a objetos I Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar

Más detalles

ELO329: Diseño y Programación Orientados a Objetos Segundo Certamen

ELO329: Diseño y Programación Orientados a Objetos Segundo Certamen Segundo Certamen Primera Parte (Sin Apuntes, 30 minutos, 1/3 puntaje): (5 pts cada una, el total se multiplica por 34/40) 1. Cuál es la relación entre clases protegidas, privadas y el calificador Friend?

Más detalles

18. Interfaces Declaración de una interfaz

18. Interfaces Declaración de una interfaz Programación orientada a objetos con Java 191 18. Interfaces Objetivos: a) Definir el concepto de interfaz b) Interpretar el código fuente de una aplicación Java donde aparecen interfaces c) Construir

Más detalles

Programación 1 Tema 5. Instrucciones simples y estructuradas

Programación 1 Tema 5. Instrucciones simples y estructuradas Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas Instrucción ::= Instrucciones.

Más detalles

INFORMÁTICA INDUSTRIAL

INFORMÁTICA INDUSTRIAL INFORMÁTICA INDUSTRIAL Herencia en C++. M. Abderrahim, A. Castro, J. C. Cas3llo Departamento de Ingeniería de Sistemas y Automá3ca AGENDA Herencia Constructores de las Clases Derivadas Destructores de

Más detalles

Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.

Unidad V. Ya veremos qué poner en algunas_palabras y algo_más, por ahora sigamos un poco más. Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está

Más detalles

Cursosindustriales. Curso de C / C++ Por Deimos_hack

Cursosindustriales. Curso de C / C++ Por Deimos_hack MÓDULO 1. ESTRUCTURAS Y FUNCIONES. En los capítulos anteriores has visto como los arrays permiten almacenar diferentes datos, pero todos del mismo tipo de dato. En la práctica esto no compensa debido a

Más detalles

Algunas ideas básicas de C++ Agustín J. González ELO-329

Algunas ideas básicas de C++ Agustín J. González ELO-329 Algunas ideas básicas de C++ Agustín J. González ELO-329 1 Archivos de encabezado Son necesarios para hacer uso de constantes predefinidas. Son incluidos con la directiva del pre-procesador #include Ejemplo:

Más detalles

Introducción a los Computadores ITTELSI. Curso

Introducción a los Computadores ITTELSI. Curso Introducción a los Computadores ITTELSI. Curso 2004-2005 PRÁCTICA 2: ESTRUCTURAS DE CONTROL Y SUBPROGRAMAS (I) Hoy vamos a practicar más conceptos sencillos del lenguaje, que nos permitan decidir qué sentencias

Más detalles

Estructuración del programa en partes más pequeñas y sencillas

Estructuración del programa en partes más pequeñas y sencillas Introducción Estructuración del programa en partes más pequeñas y sencillas Modularización Propósito único Identificable Reusable Mayor claridad: programación, depuración, etc. Construcción de librerías

Más detalles

SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0

SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0 OBJETIVOS! ""# $% % REQUERIMIENTOS SOFTWARE Microsoft Visual Studio 2005.NET FrameWork 2.0 DESCRIPCIÓN En este tutorial se va a revisar la forma de trabajar con los conceptos de OO en Visual Basic.NET.

Más detalles

Objetivo N 2. Conocer la Estructura General de un Programa en C++ Estructura de Datos Prof. Egilde Márquez

Objetivo N 2. Conocer la Estructura General de un Programa en C++ Estructura de Datos Prof. Egilde Márquez Objetivo N 2 Conocer la Estructura General de un Programa en C++ Estructura de Datos Prof. Egilde Márquez * Un programa en C++ está definido por funciones (grupo de instrucciones que pueden o no hacer

Más detalles

Tipos de datos y operadores en C++

Tipos de datos y operadores en C++ Tipos de datos y operadores en C++ El tipo de dato determina la naturaleza del valor que puede tomar una variable. Un tipo de dato define un dominio de valores y las operaciones que se pueden realizar

Más detalles

Programación 1 Tema 7. Desarrollo modular y descendente de programas

Programación 1 Tema 7. Desarrollo modular y descendente de programas Programación 1 Tema 7 Desarrollo modular y descendente de programas Índice Programas dirigidos por menú Diseño modular Módulos de biblioteca en C++ Programa dirigido por menú MENÚ DE OPERACIONES ===================

Más detalles

Subrutinas o Funciones

Subrutinas o Funciones Subrutinas o Funciones JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING Objetivos Conocer las características estructurales de una función. Entender la importancia y las ventajas del uso de funciones

Más detalles

Tema: Punteros a Objetos. Puntero this.

Tema: Punteros a Objetos. Puntero this. Programación II. Guía 6 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Punteros a Objetos. Puntero this. Objetivos Manejar objetos por medio de punteros. Utilizar el puntero

Más detalles

Taller #1 (versión del 18 de septiembre de 2009) Programación básica y aproximación al paradigma orientado a objetos

Taller #1 (versión del 18 de septiembre de 2009) Programación básica y aproximación al paradigma orientado a objetos Universidad del Valle Facultad de Ingeniería Escuela de Ingeniería de Sistemas y Computación Introducción a la Programación Orientada a Objetos (750081M) Taller #1 (versión del 18 de septiembre de 2009)

Más detalles

Formatos para prácticas de laboratorio

Formatos para prácticas de laboratorio Fecha de efectividad: CARRERA Ing. En Mecatrónica PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA 2009-2 11892 Programación Orientada a Objetos PRÁCTICA No. 4 LABORATORIO DE NOMBRE DE LA PRÁCTICA

Más detalles

Funciones: Pasos por Referencia Recursividad

Funciones: Pasos por Referencia Recursividad Funciones: Pasos por Referencia Recursividad Fundamentos de Programación Fundamentos de Programación I Parámetros por referencia Con la instrucción return sólo se puede devolver un valor calculado. A veces

Más detalles

Programación I Teoría II.

Programación I Teoría II. Programación I Teoría II http://proguno.unsl.edu.ar proguno@unsl.edu.ar MODULARIDAD FUNCIONES EN C Modularidad Principio para resolución de problemas: Dividir para reinar Modularidad Módulo Función Procedimiento

Más detalles

Tema 6: Herencia. (El lenguaje C++)

Tema 6: Herencia. (El lenguaje C++) (El lenguaje C++) 1 Índice 2 1. Herencia 3 En C++ pueden ser definidas clases en términos de otras clases (composición). En C++ también podemos definir una clase a partir de otra preexistente utilizando

Más detalles

Programación C++ (1 Parte) Dr. Oldemar Rodríguez Rojas Escuela De Informática Universidad Nacional

Programación C++ (1 Parte) Dr. Oldemar Rodríguez Rojas Escuela De Informática Universidad Nacional Programación C++ (1 Parte) Dr. Oldemar Rodríguez Rojas Escuela De Informática Universidad Nacional Programming Language Popularity: The TCP Index for December, 2012 La noción de clase en C++ C++ fue

Más detalles

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Programación 1 Tema 3. Información, datos, operaciones y expresiones Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información

Más detalles

Fundamentos de la POO 1

Fundamentos de la POO 1 Fundamentos de la POO 1 La correcta aplicación de los conocimientos de clases y objetos nos permitirán llegar a los objetivos planteados y a generar programas que puedan ser fáciles de comprender para

Más detalles

Análisis y escritura de las estructuras de control

Análisis y escritura de las estructuras de control Análisis y escritura de las estructuras de control por Iván Cruz En esta lectura se abordarán las estructuras de control del lenguaje de programación C, estas estructuras. Permiten al programador comunicarse

Más detalles

Algunas ideas básicas de C++ Agustín J. González ELO-329

Algunas ideas básicas de C++ Agustín J. González ELO-329 Algunas ideas básicas de C++ Agustín J. González ELO-329 1 Archivos de encabezado Son necesarios para hacer uso de constantes predefinidas. Son incluidos con la directiva de l procesador #include Ejemplo:

Más detalles

Programación Avanzada

Programación Avanzada Programación Avanzada Referencias Circulares y Namespaces 1 Índice 1. INTRODUCCIÓN.. 3 2. REFERENCIAS CIRCULARES.. 4 Ejercicio 1 4 Ejercicio 2 4 Ejercicio 3 5 3. NAMESPACES 6 Introducción 6 Creación de

Más detalles

Las clases como tipos de datos definidos por el usuario

Las clases como tipos de datos definidos por el usuario . La clase Fraccional. Representación en UML de los niveles de acceso 3. Categorías de los objetos que aparecen en los métodos 4. El puntero this. Métodos operadores La clase Fraccional Vamos a diseñar

Más detalles

Lenguaje de Programación: C++ Funciones

Lenguaje de Programación: C++ Funciones UG C++ Lenguaje de Programación: C++ Universidad de Guanajuato Septiembre 2010 Lenguaje de Programación: C++ sobrecargadas C++, a diferencia del C estándar, permite declarar funciones con el mismo nombre

Más detalles

Programación 1. Tema II. Diseño de los primeros programas. Lección 4. Diseño de algunos programas elementales

Programación 1. Tema II. Diseño de los primeros programas. Lección 4. Diseño de algunos programas elementales Programación 1 Tema II. Diseño de los primeros programas Lección 4. Diseño de algunos programas elementales 1 Objetivos de la lección: Aprender, paso a paso, una metodología de programación descendente

Más detalles

Una función es un miniprograma dentro de un programa. Las funciones contienen varias

Una función es un miniprograma dentro de un programa. Las funciones contienen varias TEMA 6. FUNCIONES. Una función es un miniprograma dentro de un programa. Las funciones contienen varias sentencias bajo un solo nombre, que un programa puede utilizar una o más veces para ejecutar dichas

Más detalles

CONTENIDO DE LA LECCIÓN 16

CONTENIDO DE LA LECCIÓN 16 CONTENIDO DE LA LECCIÓN 16 USO DE REFERENCIAS EN C++ 1. Introducción 2 2. Parámetros de referencia como alias 2 2.1. Ejemplo 16.1 3 3. Variables de referencia como alias 4 3.1. Ejemplos 16.2, 16.3, 16.4,

Más detalles

Manejo de Excepciones. Agustín J. González ELO329

Manejo de Excepciones. Agustín J. González ELO329 Manejo de Excepciones Agustín J. González ELO329 Manejo de Excepciones El Manejo de Excepciones es un mecanismo interno para comunicar estados de error desde una parte del programa a otra. Comúnmente,

Más detalles

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.

Más detalles

Lenguaje de Programación: C++ Repaso de Material C++

Lenguaje de Programación: C++ Repaso de Material C++ UG Lenguaje de Programación: C++ Repaso de Material C++ Universidad de Guanajuato Octubre 2010 Variables Tipos de Variables Operadores Variable Para poder leer algo, necesitamos un lugar donde poner lo

Más detalles

Punteros y Memoria Dinámica I

Punteros y Memoria Dinámica I Memoria Punteros y Memoria Dinámica I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es! Lugar donde almacenan los datos y las instrucciones! Compuesta de un gran número de bytes!

Más detalles

Lenguaje de Programación: C++ Directivas al preprocesador

Lenguaje de Programación: C++ Directivas al preprocesador UG Lenguaje de Programación: C++ Directivas al preprocesador Universidad de Guanajuato Septiembre 2010 Un preprocesador es un programa separado que es invocado por el compilador antes de que comience la

Más detalles

CAPITULO 6: FUNCIONES

CAPITULO 6: FUNCIONES CAPITULO 6: FUNCIONES 1. INTRODUCCIÓN Un problema de programación en C se resuelve descomponiéndolo en varias partes. Cada una de estas partes se puede asociar a una función que resuelva su fracción correspondiente

Más detalles

Programación Orientada a Objetos en C++

Programación Orientada a Objetos en C++ Unidad I Programación Orientada a Objetos en C++ Programación Orientada a Objetos en C++ Programación I - 0416202 Contenido Esta lección abarca los siguientes temas: Estructura y declaración de una clase

Más detalles

Fundamentos de programación

Fundamentos de programación Fundamentos de programación 4 Grado en Ingeniería Informática Grado en Ingeniería del Software Grado en Ingeniería de Computadores Material de la Prof.ª Versión revisada y ampliada del material del Prof.

Más detalles

Lenguaje C, tercer bloque: Funciones

Lenguaje C, tercer bloque: Funciones Lenguaje C, tercer bloque: Funciones José Otero 1 Departamento de informática Universidad de Oviedo 28 de noviembre de 2007 Índice 1 Tipo puntero Concepto de puntero Operador dirección Operador indirección

Más detalles

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados

Más detalles

Departamento de Electrónica

Departamento de Electrónica Introducción al Departamento de Electrónica Fundación San Valero Introducción al 1 Introducción al Introducción al 2 Introducción al Introducción al 3 Características del Características del Departamento

Más detalles

Técnicas Informáticas PRÁCTICA 7 Curso PRÁCTICA 7: Cadenas y Estructuras.

Técnicas Informáticas PRÁCTICA 7 Curso PRÁCTICA 7: Cadenas y Estructuras. : Cadenas y Estructuras. Objetivo de la práctica: - Utilización y manipulación de cadenas de texto. Conocer y aplicar el tipo de dato estructurado en C++. Cadenas Las cadenas ('string') son un tipo especial

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos

Más detalles

Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: EMPEZAR DE CERO A PROGRAMAR EN lenguaje C Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C 1 OBJETIVOS Aprender a

Más detalles

Índice. Estructuras de datos en Memoria Principal. Vectores. Matrices. Cadenas de caracteres. Estructuras. Estructuras de datos en Memoria Externa

Índice. Estructuras de datos en Memoria Principal. Vectores. Matrices. Cadenas de caracteres. Estructuras. Estructuras de datos en Memoria Externa Índice Estructuras de datos en Memoria Principal Vectores Matrices Cadenas de caracteres Estructuras Estructuras de datos en Memoria Externa Ficheros Tema: Estructuras de Datos 2 Estructuras Una estructura

Más detalles

El lenguaje C++ A partir del lenguaje C Entorno de programación Visual C++

El lenguaje C++ A partir del lenguaje C Entorno de programación Visual C++ El lenguaje C++ A partir del lenguaje C Entorno de programación Visual C++ Nuevas palabras reservadas asm inline public virtual catch new template class operator this delete private throw friend protected

Más detalles

Informática Industrial I

Informática Industrial I Informática Industrial I Grado en Ingeniería en Electrónica Industrial y Automática Álvaro Castro González Nicolas Burus Mohamed Abderrahim José Carlos Castillo Montoya Práctica 6 Plantillas A lo largo

Más detalles

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa Paradigmas de lenguajes de programación Introducción a la programación imperativa Algoritmos y Estructuras de Datos I Paradigma: Definición del modo en el que se especifica el cómputo (que luego es implementado

Más detalles

Programación 1 Tema 2. Lenguaje de programación y ejecución de un programa

Programación 1 Tema 2. Lenguaje de programación y ejecución de un programa Programación 1 Tema 2 Lenguaje de programación y ejecución de un programa Índice Lenguaje de programación Símbolos Sintaxis Semántica Computador Ejecución de un programa Sistema operativo, entorno de programación

Más detalles

Tema 3. Herencia. Programación Avanzada. Jorge Badenas

Tema 3. Herencia. Programación Avanzada. Jorge Badenas Tema 3. Herencia Programación Avanzada Jorge Badenas 1. Herencia Herencia: relación entre dos clases, donde una clase nueva se define como una extensión de la otra. En la nueva clase sólo necesitamos escribir

Más detalles

Clases en C++ Agustín J. González ELO329

Clases en C++ Agustín J. González ELO329 Clases en C++ Agustín J. González ELO329 1 Clases y Objetos Una clase es un tipo de datos definido por el usuario. Provee un molde o diseño" para múltiples objetos del mismo tipo o categoría. Un objeto

Más detalles

Programación 1. Tema I. Conceptos y elementos básicos de Programación. Lección 2. Lenguaje de programación y ejecución de un programa

Programación 1. Tema I. Conceptos y elementos básicos de Programación. Lección 2. Lenguaje de programación y ejecución de un programa Programación 1 Tema I. Conceptos y elementos básicos de Programación Lección 2. Lenguaje de programación y ejecución de un programa 1 Léxico, sintaxis y semántica de un lenguaje #include #include

Más detalles

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE) Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben

Más detalles

Los constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase al mismo tiempo que se declara.

Los constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase al mismo tiempo que se declara. Constructores Los constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase al mismo tiempo que se declara. Los constructores tienen el mismo nombre

Más detalles

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes Introducción Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual smuelas@fi.upm.es! Qué es la POO?! Un paradigma de programación! Un paradigma es una forma de afrontar

Más detalles

Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación:

Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación: Clase teórica 2 Algoritmos en C Página 1 de 6 TIPOS DE DATOS Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación: Por el momento nuestro

Más detalles

Programación 1 Problemas del Composición condicional

Programación 1 Problemas del Composición condicional Programación 1 Problemas del 6-10-2016 Composición condicional Un problema Programa que indique si un año es o no bisiesto Escriba un año: 2016 El año 2016 es bisiesto Escriba un año: 2017 El año 2017

Más detalles

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +. APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje

Más detalles

Tema 7. Colas. José M. Badía, Begoña Martínez, Antonio Morales y José M. Badía. {badia, bmartine,

Tema 7. Colas.   José M. Badía, Begoña Martínez, Antonio Morales y José M. Badía. {badia, bmartine, Tema 7. Colas http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Badía {badia, bmartine, morales}@icc.uji.es Estructuras de datos y de la información Universitat Jaume

Más detalles

Fundamentos de la programación

Fundamentos de la programación Fundamentos de la programación 2 Grado en Ingeniería Electrónica y Comunicaciones Pilar Sancho Thomas Luis Hernández Yáñez Facultad de Informática Universidad Complutense Fundamentos de la programación:

Más detalles