Este documento describe conceptos básicos de programación orientada a objetos en Java. Explica las definiciones de objetos, clases, métodos y atributos. También cubre temas como encapsulamiento, herencia, paquetes, relaciones entre clases y el uso de arreglos y matrices.
City of Salina Brochure-Recomended Xeriscape Plant ListCity of Salina
The document provides a recommended xeriscape plant list for Salina, Kansas. It is divided into sections for large, medium, and small deciduous and evergreen shrubs. It also includes lists of groundcovers, ornamental grasses, perennials, and annuals suitable for xeriscaping. The plant list recommends over 80 different drought-tolerant plant species for landscaping in Salina with low water needs.
Rendición de cuentas 2015 - Viva samborondoneluniversocom
Viva Samborondón es un periódico semanal gratuito que circula los jueves en Samborondón, Ecuador. En 2015 cumplió 5 años y tuvo una circulación de 10,000 ejemplares semanales. El periódico pertenece a CA EL UNIVERSO y tiene como objetivo informar sobre noticias y eventos positivos de la comunidad de Samborondón. En 2015, CA EL UNIVERSO tuvo $48.7 millones en activos y $22.9 millones en pasivos.
El documento proporciona información sobre un estudiante de la Escuela Superior de Agricultura del Valle del Fuerte de la Universidad Autónoma de Sinaloa. El estudiante se llama Camilo Eduardo Bernal nieblas y está inscrito en la clase de Matemáticas del grupo 1-8 con el profesor Héctor García limón.
Rajendra S. Sookroo provides his curriculum vitae, which includes personal information such as his address, phone numbers, and qualifications. He has over 33 years of experience working for Telkom SA in various roles related to installing and maintaining telephone infrastructure. His duties have included fitting telephone services, coordinating field teams, and managing customer systems. He lists his educational background, including a diploma in management, and provides references.
Author and download:
http://resources.wayin.com/ebook-social-persuasion.html
DESCARGA deshabilitada. Seguir enlace anterior y descargar desde web del autor.
DOWNLOAD disabled from this account. Please, follow the link to author's page to do it.
Nota acerca de los documentos: Todos ellos pertenecen a sus autores. Se incluye el enlace de descarga directa desde la página del autor y se desactiva el enlace desde Slideshare. Se difunde el contenido original desde nuestro blog.
Importante: Si el autor/autores desean que se retire la presentación, por favor, mandar un email a webmaster@comunicacionactiva.com y se hará de inmediato.
Important Note: All presentations belong to their authors. We include download link in the author's page. Not from our web neither from here. Our aim is to promote the original source and share what we think it's a useful content. If author wants us to erase/delete/unpublish his work, just write us at: webmaster@comunicacionactiva.com
El documento describe la misión y visión de un estudiante. La misión es asistir activamente a clases y actividades organizadas por su escuela e instituto, y cumplir con actividades en el centro laboral y el hogar. La visión es ser una profesional competitiva con ética profesional y líder en su centro laboral.
Este documento analiza las dificultades para cultivar hongos comestibles micorrícicos. Aunque se han logrado cultivar con éxito algunas especies como Tuber melanosporum y Lactarius deliciosus, muchos hongos valiosos como la trufa blanca italiana y Tricholoma matsutake no se han podido cultivar. Esto se debe a que la relación entre los hongos y las plantas huéspedes es más compleja de lo que se pensaba, y algunos hongos pueden tener varios componentes necesarios o requerir condiciones
City of Salina Brochure-Recomended Xeriscape Plant ListCity of Salina
The document provides a recommended xeriscape plant list for Salina, Kansas. It is divided into sections for large, medium, and small deciduous and evergreen shrubs. It also includes lists of groundcovers, ornamental grasses, perennials, and annuals suitable for xeriscaping. The plant list recommends over 80 different drought-tolerant plant species for landscaping in Salina with low water needs.
Rendición de cuentas 2015 - Viva samborondoneluniversocom
Viva Samborondón es un periódico semanal gratuito que circula los jueves en Samborondón, Ecuador. En 2015 cumplió 5 años y tuvo una circulación de 10,000 ejemplares semanales. El periódico pertenece a CA EL UNIVERSO y tiene como objetivo informar sobre noticias y eventos positivos de la comunidad de Samborondón. En 2015, CA EL UNIVERSO tuvo $48.7 millones en activos y $22.9 millones en pasivos.
El documento proporciona información sobre un estudiante de la Escuela Superior de Agricultura del Valle del Fuerte de la Universidad Autónoma de Sinaloa. El estudiante se llama Camilo Eduardo Bernal nieblas y está inscrito en la clase de Matemáticas del grupo 1-8 con el profesor Héctor García limón.
Rajendra S. Sookroo provides his curriculum vitae, which includes personal information such as his address, phone numbers, and qualifications. He has over 33 years of experience working for Telkom SA in various roles related to installing and maintaining telephone infrastructure. His duties have included fitting telephone services, coordinating field teams, and managing customer systems. He lists his educational background, including a diploma in management, and provides references.
Author and download:
http://resources.wayin.com/ebook-social-persuasion.html
DESCARGA deshabilitada. Seguir enlace anterior y descargar desde web del autor.
DOWNLOAD disabled from this account. Please, follow the link to author's page to do it.
Nota acerca de los documentos: Todos ellos pertenecen a sus autores. Se incluye el enlace de descarga directa desde la página del autor y se desactiva el enlace desde Slideshare. Se difunde el contenido original desde nuestro blog.
Importante: Si el autor/autores desean que se retire la presentación, por favor, mandar un email a webmaster@comunicacionactiva.com y se hará de inmediato.
Important Note: All presentations belong to their authors. We include download link in the author's page. Not from our web neither from here. Our aim is to promote the original source and share what we think it's a useful content. If author wants us to erase/delete/unpublish his work, just write us at: webmaster@comunicacionactiva.com
El documento describe la misión y visión de un estudiante. La misión es asistir activamente a clases y actividades organizadas por su escuela e instituto, y cumplir con actividades en el centro laboral y el hogar. La visión es ser una profesional competitiva con ética profesional y líder en su centro laboral.
Este documento analiza las dificultades para cultivar hongos comestibles micorrícicos. Aunque se han logrado cultivar con éxito algunas especies como Tuber melanosporum y Lactarius deliciosus, muchos hongos valiosos como la trufa blanca italiana y Tricholoma matsutake no se han podido cultivar. Esto se debe a que la relación entre los hongos y las plantas huéspedes es más compleja de lo que se pensaba, y algunos hongos pueden tener varios componentes necesarios o requerir condiciones
Filière d'excellence animale - Avril s'engageAvril
Avril, engagé dans un modèle de production durable, a développé en 2015 le label qualité spécifique « Engagés dans l’Élevage ». Une démarche inédite qui lui a permis de co- construire sa première filière d’excellence porcine. Focus dans cette infographie.
Este documento describe la intoxicación por hidrocarburos, incluyendo sus causas, síntomas y tratamiento. Los hidrocarburos son derivados del petróleo y la madera que son liposolubles y pueden dañar los pulmones. La intoxicación puede ocurrir por inhalación, ingestión o contacto. Los síntomas incluyen tos, dificultad para respirar, fiebre, dolor de cabeza y vómitos. El tratamiento depende de la ruta de exposición e incluye medidas de soporte, lavado con agua y observación
Veolia is an international services company with 173,959 employees working in water, waste, and energy management. It provides customized solutions for cities and industry clients. Nearly half of Veolia's revenue comes from water services and over a third comes from waste management.
The Communications Research Centre (CRC) is a research and development organization within Industry Canada dedicated to broadcasting technologies. Its mission is to support Industry Canada's spectrum management mandate and enable broadcasters to provide new and improved services. CRC has unique facilities for transmission testing, coverage analysis, and subjective quality assessment. It partners with Canadian broadcasters and universities as well as international organizations on projects related to digital radio/TV technologies, audio/video coding, and quality evaluation. CRC aims to transfer its knowledge and support the transition to digital broadcasting through its research.
5.ª Edición del Balance de Expresiones Online elaborado conjuntamente por Corporate Excellence y LLORENTE & CUENCA. Este estudio analiza de forma rigurosa las expresiones que de forma voluntaria se emiten en Internet y su impacto en las dimensiones que configuran la reputación corporativa: Oferta, Innovación, Finanzas, Trabajo, Ciudadanía, Liderazgo y Gobierno.
El informe ofrece un mapa de los stakeholders más activos en Internet y de los espacios a considerar para desarrollar una estrategia de posicionamiento en Internet: la red de tiempo real Twitter, la red social Facebook, la red multimedia YouTube y la red hipertextual Google. A su vez, te da información sobre los contenidos que mayor relevancia tienen para las distintas audiencias y permite identificar las principales áreas de riesgo reputacional para las empresas.
En concreto, en esta edición se ha valorado la huella digital de 71 marcas de 15 sectores diferentes a partir de un total de 88.950 URL y 28.000 menciones.
El estudio valora los 100 primeros resultados que las marcas analizadas posicionaban en cuatro entornos claves en Internet: Google, Facebook, Twitter y YouTube, y ofrece resultados concretos por sectores empresariales, dimensiones, grupos de interés y entornos. De esta forma, el análisis permite identificar aquellos sectores, temas, stakeholders y espacios más y menos favorables en términos de notabilidad (cómo se valora) y notoriedad (cuánto se valora), ofreciendo insights estratégicos para diseñar estrategias de posicionamiento en Internet.
BEO 2016 ha sido aplicado a más de 70 compañías en todo el mundo y aspira a convertirse en un estándar internacional para la gestión de la reputación en Internet.
Este documento describe los conceptos básicos de la programación orientada a objetos, incluyendo objetos, estado, comportamiento, herencia, métodos (constructores y destructores), persistencia y jerarquía de clases. Define objetos como entidades con estado y comportamiento, y explica cómo la herencia permite reutilizar clases ya definidas. Además, detalla los roles de los constructores para inicializar objetos y de los destructores para liberar recursos.
El documento describe los modificadores de acceso en Java y sus diferentes tipos (público, privado, protegido y por defecto), así como el uso del modificador estático. Explica que los modificadores determinan desde qué clases se puede acceder a un elemento y resume sus usos en una tabla. También explica el uso del modificador final e incluye un ejemplo de programa que usa una variable estática en una clase Empleado.
Los métodos constructores se utilizan para instanciar objetos de una clase. Pueden ser por defecto o por parámetros. El método toString se sobreescribe para devolver una representación en cadena de los atributos de un objeto cuando se imprime.
El documento describe los métodos propios de clase y cómo implementarlos para resolver los requerimientos funcionales de una aplicación para el manejo de datos de empleados. Se definen las clases Empleado y Fecha con sus atributos. Se proporcionan ejemplos de métodos como asignar fecha actual, calcular diferencia entre fechas y un constructor de Fecha a partir de un String. Finalmente, se indica cómo invocar estos métodos desde la clase Principal.
El documento describe conceptos de programación orientada a objetos como clases, objetos, campos, métodos, propiedades, eventos, encapsulación y sobrecarga de métodos. Las clases definen la estructura y comportamiento de los objetos mediante estos elementos. Los objetos son instancias concretas creadas a partir de las clases.
Este documento presenta los elementos básicos de una clase en Java, incluyendo tipos de clases, atributos, métodos, constructores, herencia y referencias this. Explica conceptos como modificadores de clase y métodos, ámbito de variables, creación de objetos, overriding de métodos y más. El objetivo es que los estudiantes adquieran conocimientos fundamentales relacionados con la programación orientada a objetos en Java.
Este documento describe los conceptos básicos de la programación orientada a objetos en Java, incluyendo clases, objetos, métodos y cómo crearlos. Explica que una clase define las características y comportamientos de un objeto, y que un objeto es una instancia de una clase. También describe cómo declarar y acceder a atributos y métodos de objetos, y cómo crear y llamar métodos dentro y fuera de las clases.
Este documento describe conceptos básicos de programación orientada a objetos en Java como clases, objetos, atributos, métodos, encapsulamiento, herencia y paquetes. Explica que una clase define la estructura y comportamiento de un objeto, mientras que un objeto es una instancia concreta de una clase. También describe cómo las referencias permiten la comunicación entre objetos y el compartir de recursos.
Este documento presenta el plan de estudios de la materia de Programación Orientada a Objetos. Describe los objetivos generales y las unidades que comprenden la materia, incluyendo introducción a objetos, clases, herencia y polimorfismo. También presenta los temas de cada unidad como clases y objetos, herencia, polimorfismo, excepciones y flujos de archivos. Finalmente, detalla la forma de evaluación que incluye exámenes teóricos y prácticos, así como la participación y tareas durante el curso.
La palabra reservada this y los métodos "getters" y "setters"ingemg1
La sobrecarga es definir dos o más métodos con el mismo nombre, pero con parámetros diferentes por cantidad o tipo. El objetivo
de la sobrecarga es reducir el número de identificadores distintos para una misma acción pero con matices que la diferencian.
La sobrecarga se puede realizar tanto en métodos generales, como en constructores. La sobrecarga es un polimorfismo estático,
ya que es el compilador quien resuelve el conflicto del método a referenciar.
Este documento describe la herencia en Java y sus características principales. La herencia permite crear nuevas clases que heredan los atributos y métodos de clases existentes, permitiendo la reutilización de código. Todas las clases en Java heredan directa o indirectamente de la clase Object, la cual contiene métodos como clone, equals y hashCode. La herencia permite crear jerarquías de clases donde las subclases son más específicas que sus superclases.
POO Unidad 2 con Java temario de unidad sobre clases, herencia, métodos.pptxJulianRollins1
Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de PO
Este documento presenta la información sobre un curso de Métodos Numéricos. Incluye detalles sobre la evaluación, que consiste en dos exámenes parciales y el trabajo académico. El programa de contenidos cubre cuatro unidades: teoría de errores y ecuaciones no lineales, interpolación polinómica, derivación e integración numérica, y ecuaciones diferenciales. Los estudiantes aprenderán a aplicar varios métodos numéricos y software como MatLab y MathCad para resolver problemas matemáticos y del mundo real.
Apunte de Programación Orientada a objetos explicando las nociones básicas del paradigma.
Apunte creado por Alejandro Canosa para el plan 111 Mil Programadores
Este documento presenta un proyecto llamado "Descubriendo los secretos de la función cuadrática" cuyo objetivo es que los estudiantes aprendan las características y propiedades de la función cuadrática a través del uso de software de gráficos. Los estudiantes también investigarán aplicaciones de la función cuadrática en la vida cotidiana y compartirán su trabajo en un blog. El proyecto incluye actividades formativas y sumativas para evaluar el aprendizaje de los estudiantes.
Filière d'excellence animale - Avril s'engageAvril
Avril, engagé dans un modèle de production durable, a développé en 2015 le label qualité spécifique « Engagés dans l’Élevage ». Une démarche inédite qui lui a permis de co- construire sa première filière d’excellence porcine. Focus dans cette infographie.
Este documento describe la intoxicación por hidrocarburos, incluyendo sus causas, síntomas y tratamiento. Los hidrocarburos son derivados del petróleo y la madera que son liposolubles y pueden dañar los pulmones. La intoxicación puede ocurrir por inhalación, ingestión o contacto. Los síntomas incluyen tos, dificultad para respirar, fiebre, dolor de cabeza y vómitos. El tratamiento depende de la ruta de exposición e incluye medidas de soporte, lavado con agua y observación
Veolia is an international services company with 173,959 employees working in water, waste, and energy management. It provides customized solutions for cities and industry clients. Nearly half of Veolia's revenue comes from water services and over a third comes from waste management.
The Communications Research Centre (CRC) is a research and development organization within Industry Canada dedicated to broadcasting technologies. Its mission is to support Industry Canada's spectrum management mandate and enable broadcasters to provide new and improved services. CRC has unique facilities for transmission testing, coverage analysis, and subjective quality assessment. It partners with Canadian broadcasters and universities as well as international organizations on projects related to digital radio/TV technologies, audio/video coding, and quality evaluation. CRC aims to transfer its knowledge and support the transition to digital broadcasting through its research.
5.ª Edición del Balance de Expresiones Online elaborado conjuntamente por Corporate Excellence y LLORENTE & CUENCA. Este estudio analiza de forma rigurosa las expresiones que de forma voluntaria se emiten en Internet y su impacto en las dimensiones que configuran la reputación corporativa: Oferta, Innovación, Finanzas, Trabajo, Ciudadanía, Liderazgo y Gobierno.
El informe ofrece un mapa de los stakeholders más activos en Internet y de los espacios a considerar para desarrollar una estrategia de posicionamiento en Internet: la red de tiempo real Twitter, la red social Facebook, la red multimedia YouTube y la red hipertextual Google. A su vez, te da información sobre los contenidos que mayor relevancia tienen para las distintas audiencias y permite identificar las principales áreas de riesgo reputacional para las empresas.
En concreto, en esta edición se ha valorado la huella digital de 71 marcas de 15 sectores diferentes a partir de un total de 88.950 URL y 28.000 menciones.
El estudio valora los 100 primeros resultados que las marcas analizadas posicionaban en cuatro entornos claves en Internet: Google, Facebook, Twitter y YouTube, y ofrece resultados concretos por sectores empresariales, dimensiones, grupos de interés y entornos. De esta forma, el análisis permite identificar aquellos sectores, temas, stakeholders y espacios más y menos favorables en términos de notabilidad (cómo se valora) y notoriedad (cuánto se valora), ofreciendo insights estratégicos para diseñar estrategias de posicionamiento en Internet.
BEO 2016 ha sido aplicado a más de 70 compañías en todo el mundo y aspira a convertirse en un estándar internacional para la gestión de la reputación en Internet.
Este documento describe los conceptos básicos de la programación orientada a objetos, incluyendo objetos, estado, comportamiento, herencia, métodos (constructores y destructores), persistencia y jerarquía de clases. Define objetos como entidades con estado y comportamiento, y explica cómo la herencia permite reutilizar clases ya definidas. Además, detalla los roles de los constructores para inicializar objetos y de los destructores para liberar recursos.
El documento describe los modificadores de acceso en Java y sus diferentes tipos (público, privado, protegido y por defecto), así como el uso del modificador estático. Explica que los modificadores determinan desde qué clases se puede acceder a un elemento y resume sus usos en una tabla. También explica el uso del modificador final e incluye un ejemplo de programa que usa una variable estática en una clase Empleado.
Los métodos constructores se utilizan para instanciar objetos de una clase. Pueden ser por defecto o por parámetros. El método toString se sobreescribe para devolver una representación en cadena de los atributos de un objeto cuando se imprime.
El documento describe los métodos propios de clase y cómo implementarlos para resolver los requerimientos funcionales de una aplicación para el manejo de datos de empleados. Se definen las clases Empleado y Fecha con sus atributos. Se proporcionan ejemplos de métodos como asignar fecha actual, calcular diferencia entre fechas y un constructor de Fecha a partir de un String. Finalmente, se indica cómo invocar estos métodos desde la clase Principal.
El documento describe conceptos de programación orientada a objetos como clases, objetos, campos, métodos, propiedades, eventos, encapsulación y sobrecarga de métodos. Las clases definen la estructura y comportamiento de los objetos mediante estos elementos. Los objetos son instancias concretas creadas a partir de las clases.
Este documento presenta los elementos básicos de una clase en Java, incluyendo tipos de clases, atributos, métodos, constructores, herencia y referencias this. Explica conceptos como modificadores de clase y métodos, ámbito de variables, creación de objetos, overriding de métodos y más. El objetivo es que los estudiantes adquieran conocimientos fundamentales relacionados con la programación orientada a objetos en Java.
Este documento describe los conceptos básicos de la programación orientada a objetos en Java, incluyendo clases, objetos, métodos y cómo crearlos. Explica que una clase define las características y comportamientos de un objeto, y que un objeto es una instancia de una clase. También describe cómo declarar y acceder a atributos y métodos de objetos, y cómo crear y llamar métodos dentro y fuera de las clases.
Este documento describe conceptos básicos de programación orientada a objetos en Java como clases, objetos, atributos, métodos, encapsulamiento, herencia y paquetes. Explica que una clase define la estructura y comportamiento de un objeto, mientras que un objeto es una instancia concreta de una clase. También describe cómo las referencias permiten la comunicación entre objetos y el compartir de recursos.
Este documento presenta el plan de estudios de la materia de Programación Orientada a Objetos. Describe los objetivos generales y las unidades que comprenden la materia, incluyendo introducción a objetos, clases, herencia y polimorfismo. También presenta los temas de cada unidad como clases y objetos, herencia, polimorfismo, excepciones y flujos de archivos. Finalmente, detalla la forma de evaluación que incluye exámenes teóricos y prácticos, así como la participación y tareas durante el curso.
La palabra reservada this y los métodos "getters" y "setters"ingemg1
La sobrecarga es definir dos o más métodos con el mismo nombre, pero con parámetros diferentes por cantidad o tipo. El objetivo
de la sobrecarga es reducir el número de identificadores distintos para una misma acción pero con matices que la diferencian.
La sobrecarga se puede realizar tanto en métodos generales, como en constructores. La sobrecarga es un polimorfismo estático,
ya que es el compilador quien resuelve el conflicto del método a referenciar.
Este documento describe la herencia en Java y sus características principales. La herencia permite crear nuevas clases que heredan los atributos y métodos de clases existentes, permitiendo la reutilización de código. Todas las clases en Java heredan directa o indirectamente de la clase Object, la cual contiene métodos como clone, equals y hashCode. La herencia permite crear jerarquías de clases donde las subclases son más específicas que sus superclases.
POO Unidad 2 con Java temario de unidad sobre clases, herencia, métodos.pptxJulianRollins1
Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de temas de unidad dos para preparatoria 6to semestre, sobre la declaración de atributos,métodos,y el encapsulamiento de clases. Diapositivas de PO
Este documento presenta la información sobre un curso de Métodos Numéricos. Incluye detalles sobre la evaluación, que consiste en dos exámenes parciales y el trabajo académico. El programa de contenidos cubre cuatro unidades: teoría de errores y ecuaciones no lineales, interpolación polinómica, derivación e integración numérica, y ecuaciones diferenciales. Los estudiantes aprenderán a aplicar varios métodos numéricos y software como MatLab y MathCad para resolver problemas matemáticos y del mundo real.
Apunte de Programación Orientada a objetos explicando las nociones básicas del paradigma.
Apunte creado por Alejandro Canosa para el plan 111 Mil Programadores
Este documento presenta un proyecto llamado "Descubriendo los secretos de la función cuadrática" cuyo objetivo es que los estudiantes aprendan las características y propiedades de la función cuadrática a través del uso de software de gráficos. Los estudiantes también investigarán aplicaciones de la función cuadrática en la vida cotidiana y compartirán su trabajo en un blog. El proyecto incluye actividades formativas y sumativas para evaluar el aprendizaje de los estudiantes.
Este documento describe conceptos clave de la programación orientada a objetos en Java como la herencia, polimorfismo, interfaces y clases abstractas. Explica que la herencia permite crear nuevas clases a partir de clases existentes reutilizando sus métodos y campos. El polimorfismo permite que una variable pueda hacer referencia a objetos de tipos relacionados. Las interfaces definen lo que deben hacer las clases sin especificar cómo, y solo pueden contener constantes y firmas de métodos.
El documento describe los fundamentos del lenguaje de programación Java, incluyendo su versatilidad, portabilidad y orientación a objetos a través de clases, métodos y objetos. Presenta un ejemplo Hola Mundo en Java y explica conceptos como identificadores, declaración de variables, operadores aritméticos y lógicos.
El documento describe los fundamentos del lenguaje de programación Java, incluyendo su versatilidad, portabilidad y orientación a objetos a través de clases, métodos y objetos. Presenta un ejemplo Hola Mundo en Java y explica conceptos como identificadores, declaración de variables, operadores aritméticos y lógicos.
Este documento presenta el proyecto de investigación de un sistema informático desarrollado en C++ para controlar el inventario y facturación de una distribuidora de agua. El proyecto aplica conceptos de programación orientada a objetos y estructuras de datos aprendidos en las clases de Programación II y Estructura de Datos. El sistema permitirá consultar, ingresar, modificar y eliminar el inventario, así como facturar ventas y consultar clientes.
Este documento presenta una introducción a Java, incluyendo las herramientas de desarrollo, tipos de aplicaciones, tipos de datos primitivos, operadores, variables, constantes, entrada y salida. También cubre temas como conversiones de tipos, cadenas, funciones matemáticas y estructuras de control.
Este documento presenta una introducción a Java. Explica la historia y evolución de Java desde su creación en 1991 hasta su uso actual. También describe las características clave de Java como un lenguaje de programación orientado a objetos como abstracción, encapsulación, herencia y polimorfismo. Finalmente, incluye ejemplos simples de programas Java.
Este documento proporciona una introducción a los conceptos fundamentales de la investigación. Explica que la investigación es una actividad sistemática para obtener nueva información y conocimientos mediante la observación y experimentación. Luego describe los diferentes tipos de actividades en el sistema de ciencia e innovación tecnológica, incluida la investigación y el desarrollo. Finalmente, destaca las etapas clave de un proyecto de investigación, como la planificación, ejecución, procesamiento de información y redacción del informe.
El documento habla sobre interfaces, clases abstractas, herencia y polimorfismo en Java. Explica que las interfaces definen contratos de métodos sin implementación, las clases abstractas pueden contener métodos abstractos y concretos, la herencia permite que las subclases extiendan la funcionalidad de las superclases, y el polimorfismo permite que objetos de diferentes tipos se comporten de forma uniforme. Luego, presenta un ejemplo de clases Empleado y Administrador que ilustra la herencia, donde la clase Administrador extiende a E
Este documento describe conceptos básicos de las matemáticas discretas como conjuntos, relaciones y propiedades de relaciones. Explica que una relación es una correspondencia entre los elementos de dos conjuntos y define las propiedades de reflexividad, simetría, asimetría, antisimetría y transitividad. También provee ejemplos de relaciones como la igualdad y relaciones de orden entre números.
Este documento describe un proyecto para desarrollar una herramienta que resuelva problemas comunes en matemáticas discretas de manera eficiente. Estos incluyen el cálculo de factoriales, operaciones con conjuntos, combinaciones y permutaciones, mínimo común múltiplo y máximo común divisor, e interpretación de reglas de sucesiones. La herramienta tendrá una interfaz gráfica que permita ingresar datos y mostrar resultados de manera intuitiva.
El documento define diferentes tipos de relaciones entre conjuntos como inyectiva, sobreyectiva, biyectiva e inversa. También presenta ejemplos de relaciones entre conjuntos A, B, C y D que ilustran estas propiedades. Finalmente, discute cómo probar si una relación es parcialmente ordenada verificando si es reflexiva, antisimétrica y transitiva.
Este documento describe los pasos para codificar una aplicación a partir de un diseño, incluyendo seleccionar un lenguaje de programación adecuado, construir la solución física, y considerar objetivos como corrección, claridad y eficiencia. También cubre elementos clave de la codificación como lenguajes de programación, ambientes de desarrollo y documentación.
El documento describe varios temas clave relacionados con el diseño de sistemas, incluyendo: 1) el paso del análisis al diseño mediante la transformación de especificaciones en soluciones lógicas, 2) el diseño orientado a objetos utilizando clases de objetos autocontenidos, y 3) consideraciones de diseño para interfaces, bases de datos, entrada, salida y arquitectura que satisfagan los requisitos del usuario y permitan la interacción efectiva con el sistema.
El documento describe el análisis orientado a objetos, el cual modela un sistema como un grupo de objetos que interactúan entre sí utilizando el lenguaje unificado de modelado (UML). Las partes esenciales para visualizar la construcción de un sistema son los objetos, las relaciones y los diagramas. Los objetos son los elementos centrales para crear modelos orientados a objetos y representan personas, lugares o cosas relevantes del sistema con atributos y tareas. Las relaciones muestran las asociaciones entre los objetos. Los diagramas proporcionan la descripción
El documento describe tres técnicas para recopilar información: entrevistas, JAD (Joint Application Design) y cuestionarios. JAD involucra a desarrolladores y usuarios para especificar requisitos y diseñar interfaces. Los cuestionarios pueden usarse para estudiar actitudes mediante preguntas abiertas o cerradas, y cuantificar aspectos clave. Se deben considerar ventajas y desventajas al elegir el tipo de preguntas para los cuestionarios.
El documento describe diferentes técnicas para recopilar información, enfocándose en las entrevistas. Explica los pasos para realizar entrevistas como leer antecedentes, establecer objetivos, decidir a quién entrevistar, preparar al entrevistado, y decidir el tipo de preguntas y estructura. También cubre tipos de preguntas como abiertas, cerradas y de sondeo, así como estructuras como pirámide, embudo y diamante.
El documento describe el proceso de ingeniería de requerimientos para el desarrollo de software. Explica que la ingeniería de requerimientos se enfoca en generar especificaciones claras de las necesidades de los usuarios a través de un proceso cíclico que incluye la especificación de requerimientos del negocio y de usuario, un estudio de viabilidad y la validación de requerimientos.
El documento describe el análisis de sistemas como un proceso para identificar los requisitos de información de una organización. Explica que el análisis de sistemas incluye elementos como realizar un análisis técnico y financiero, identificar las necesidades del cliente, y especificar la arquitectura y subsistemas del sistema. Además, describe que el analista debe producir una especificación que satisfaga los objetivos del proyecto de manera óptima.
El documento describe diferentes métricas y técnicas para estimar proyectos de software. Explica que las métricas son medidas para conocer el tamaño y características de un software, y que son la base para planificar un proyecto. Luego detalla distintos tipos de métricas como las directas, indirectas y normalizadas, así como técnicas de estimación como los modelos de costos, juicio de expertos, analogía, ley de Parkinson y pricing to win.
El documento describe las actividades clave en la gestión de proyectos informáticos, incluyendo definir el alcance y objetivos del proyecto, planificar el proyecto asignando tareas, comunicar el plan efectivamente al equipo, registrar incidencias, gestionar riesgos, supervisar el progreso y documentar el proyecto. También recomienda el uso de herramientas para la gestión y planeación de proyectos.
La ingeniería de software es una disciplina relativamente joven que se estableció para controlar la complejidad creciente del desarrollo de software. La ingeniería de software busca establecer procesos sistemáticos para lograr riqueza funcional y alta calidad en el tiempo y costo programados, abordando problemas como la estimación errónea de productividad y la falta de planeación y control en los proyectos de software.
Este documento describe diferentes paradigmas o modelos de ingeniería de software, incluyendo el modelo en cascada, modelo incremental, desarrollo evolutivo, construcción de prototipos, modelo en espiral y desarrollo basado en componentes. Cada modelo sigue un enfoque diferente para el desarrollo de software.
La ingeniería de software proporciona un marco para construir software funcional y de calidad de manera sistemática y organizada utilizando métodos, herramientas y procedimientos adecuados. Se ocupa de todos los aspectos de la producción de software mediante actividades como la definición del proceso de desarrollo, la administración del proyecto, la descripción y diseño del producto, la codificación, pruebas e integración, y el mantenimiento del producto.
1. Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 1
Maestría en Sistemas Computacionales
Materia
TECNOLOGÍAS DE PROGRAMACIÓN
Capítulo
2.Programación Orientada a Objetos
semestre agosto – diciembre 2012
Instituto Tecnológico de la Laguna
División de Estudios de Posgrado e Investigación
2. Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 2
Objetivos:
Describir los conceptos que fundamentan
la POO.
Crear objetos que pertenecen a las
clases de la biblioteca de Java.
Describir clases propias.
2. Programación Orientada a objetos2. Programación Orientada a objetos.
3. Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 3
2.1 Definición de objeto y descripción de
clases.
2.2 Arreglos.
2.3 Encapsulamiento y control de acceso.
2.4 Propiedades y métodos estáticos,
sobrecarga de métodos y alcance de
variables.
2.5 Paquetes.
2.6 Clases: java.lang, System, Object, String
StringBuffer y StringBuilder.
Contenido
4. Introducción
Java está totalmente orientado a objetos.
Una clase es la plantilla o plano a partir del
cual se crean realmente los objetos. Cuando
se construye un objeto de una clase, se dice
que se ha creado un ejemplar de la clase.
La encapsulación es combinar los datos y el
comportamiento del objeto en un único
paquete, y ocultar la implementación de los
datos a los ojos del usuario del objeto.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 4
5. Características de los objetos:
El comportamiento del objeto:¿qué se
puede hacer con este objeto, o qué
métodos se le pueden aplicar?
El estado del objeto: ¿cómo reacciona el
objeto cuando se le aplican esos
métodos?
La identidad del objeto: ¿cómo se
distingue el objeto de otros que tengan
el mismo comportamiento y estado?
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 5
2.1 Definición de objeto y descripción
de clases.
6. En el análisis de un problema, para
identificar las clases se buscan los
sustantivos en la descripción del
problema.
Los métodos corresponden a los
verbos.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 6
7. Relaciones entre clases
Las relaciones entre clases más comunes son:
Dependencia (“utiliza-un”)
Agregación (“tiene-un”)
Herencia(“es-un”)
Notación UML:
Herencia
Interfaz de herencia
Dependencia
Agregación
Asociación
Asociación directa
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 7
8. Definición de una clase
class Empleado{
private String nombre;
private double sueldo;
private Date fechaContrato;
// constructor
public void Empleado(String n, double s, int año, int mes, int dia) {
nombre = n;
sueldo = s;
GregorianCalendar calendario =
new GregorianCalendar(año, mes-1,dia);
fechaContrato = calendario.getTime();
}
public String getNombre() {
return nombre;
}
}
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 8
Datos
(campos
de
ejemplar)
Métodos
9. Objetos y variables de objetos
Declarar un objeto es declarar una
referencia a un objeto.
Los objetos se crean con el operador
new.
Empleado cajera = new
Empleado(“María”,12500.00,2007,10,21);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 9
10. Objetos y variables de objetos
Crear un objeto significa reservar espacio en
memoria para sus variables.
new reserva memoria para un objeto y
devuelve una referencia al objeto.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 10
Empleado
nombre
sueldo
fechaContrato
cajera =
María
12500.00
2007/10/21
11. La sentencia:
Empleado vendedor;
Define una variable objeto denominada
vendedor, que puede referirse a objetos
de tipo Empleado.
La variable vendedor no es un objeto.
Los métodos de la clase Empleado no se
pueden emplear mediante vendedor.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 11
12. Para crear el objeto tenemos dos
alternativas:
Asignar a la variable un objeto ya construido:
vendedor = new
Empleado(“Elias”,9000.00,2010,05,27);
O hacer que la variable apunte a un objeto ya
existente:
vendedor = cajera;
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 12
13. Métodos deprecated
Se dice que un método está desaprobado
(deprecated) cuando el diseñador de una
biblioteca se da cuenta de que el método no
debería existir.
Es posible seguir usándolos en los
programas pero el compilador mostrará una
advertencia.
El uso de los métodos desaprobados debe
evitarse pues podrían ser eliminados en
versiones futuras de las bibliotecas.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 13
14. Clase Date de la biblioteca de Java
Clase Date: representa un instante de tiempo como
“December 31,1999, 23:59:59 GMT”.
Constructor Date:
Pasando el objeto a un método:
System.out.println(new Date());
Aplicando un método al objeto que se crea:
String s = new Date().toString();
Almacenando el (descriptor del) objeto en una variable:
Date onomastica = new Date();
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 14
onomastica =
Date
15. Clase Date de la biblioteca de Java
Algunos de sus métodos son before,
after, toString y los métodos
desaprobados getDay, getMonth y
getYear.
Ejemplo:
Date hoy = new Date();
if (hoy.before(onomastica))
System.out.println(“Queda tiempo para comprar un regalo”);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 15
16. Clase GregorianCalendar de la
biblioteca de Java
Clase GregorianCalendar: expresa las
fechas con la notación del calendario.
Constructores:
new GregorianCalendar();
new GregorianCalendar(1999,11,31);
new GregorianCalendar(1999,Calendar.DECEMBER,31);
new GregorianCalendar(1999,Calendar.DECEMBER,31,23,59,59);
La clase GregorianCalendar extiende la
clase Calendar que describe las
propiedades de los calendarios en general.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 16
17. Métodos de Consulta
Método get de la clase GregorianCalendar:
GregorianCalendar ahora = new GregorianCalendar();
int mes = ahora.get(Calendar.MONTH);
int diaSemana = ahora.get(Calendar.DAY_OF_WEEK);
Métodos getTime de la clase
GregorianCalendar:
GregorianCalendar calendario = new GregorianCalendar();
Date laHora = calendario.getTime();
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 17
18. Métodos de modificación
Método set de la clase GregorianCalendar:
GregorianCalendar fechaLimite = new GregorianCalendar();
fechalimite.set(Calendar.YEAR, 2000);
fechalimite.set(Calendar.MONTH, Calendar.MARCH);
fechalimite.set(Calendar.DAY_OF_MONTH, 20);
Métodos setTime de la clase
GregorianCalendar:
GregorianCalendar calendario = new GregorianCalendar();
Date laHora = calendario.getTime();
calendario.setTime(laHora);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 18
19. Java.util.GregorianCalendar 1.1.
Construye un objeto de calendario que representa
la hora actual en la zona horaria predeterminada
con el país predeterminado.
GregorianCalendar()
Construye un calendario gregoriano con la fecha
dada:
GregorianCalendar(int anio, int mes, int dia)
Donde:
anio: el año de la fecha.
mes: el mes de la fecha. Inicia en 0 (enero).
dia : día del mes.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 19
20. Java.util.GregorianCalendar 1.1.
Construye un calendario gregoriano con la fecha y
hora dadas:
GregorianCalendar(int anio, int mes, int dia, int
hora, int minutos, int segundos)
Donde:
anio : el año de la fecha.
mes : el mes de la fecha. Inicia en 0 (enero).
dia : día del mes.
hora : la hora (entre 0 y 23).
minutos : los minutos (entre 0 y 59).
segundos: los segundos (entre 0 y 59).
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 20
21. Java.util.GregorianCalendar 1.1.
Proporciona el valor de un cierto campo
int get(int campo)
Determina el valor de un cierto campo
int set(int campo, int valor)
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 21
22. Java.util.GregorianCalendar 1.1.
Donde campo es uno de estos valores:
Y valor es el nuevo valor.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 22
Calendar.ERA Calendar.YEAR
Calendar.MONTH Calendar.WEEK_OF_YEAR
Calendar.WEEK_OF_MONTH Calendar.DAY_OF_MONTH
Calendar.DAY_OF_YEAR Calendar.DAY_OF_WEEK
Calendar.DAY_OF_WEEK_IN_MONTH Calendar.AM_PM
Calendar.HOUR Calendar.HOUR_OF_DAY
Calendar.MINUTE Calendar.SECOND
Calendar.MILLISECOND Calendar.ZONE_OFFSET
Calendar.DST_OFFSET
23. Java.util.GregorianCalendar 1.1.
Método aritmético para las fechas. Añade la cantidad
de tiempo especificado al campo de fecha dado:
void add(int campo, int cantidad)
c.add(Calendar.DAY_OF_MONTH,7);
Asigna a este calendario el instante de tiempo
indicado:
void setTime(Date laHora)
Donde: laHora es un instante de tiempo
Proporciona el instante de tiempo que está siendo
representado por el valor actual de este objeto de
calendario:
Date getTime()
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 23
24. Un arreglo:
Es una estructura de datos que
contiene una colección de valores del
mismo tipo.
Para acceder a cada valor se emplea
un entero como índice.
Un arreglo puede ser un vector:
arreglo unidimensional.
O una matriz: arreglo
multidimensional.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 24
2.2 Arreglos.
25. Declaración de un vector:
int[] a = new int[100];
Las localidades del vector se numeran del 0 al 99.
Se pueden almacenar datos en el vector
mediante un bucle:
for (int i =0;i<100;i++)
a[i] = i*2;
Si se intenta acceder un elemento con cualquier
índice que esté fuera de rango el programa
concluirá con la excepción “array index out of
limits”.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 25
2.2 Arreglos: vector (arreglo unidimensional)
26. Para determinar el número de elementos que hay
en un vector:
nombreVector.lenght
Una vez creado el arreglo no se puede modificar su
tamaño. Si se necesita incrementar frecuentemente
el tamaño de un arreglo mientras el programa se
está ejecutando puede utilizar una estructura de
datos denominada “lista de arreglos”.
Para acceder a los elementos de un vector se puede
el bucle:
for (int i = 0; i < a.length; i++)
System.out.println(a[i]);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 26
2.2 Arreglos: vector (arreglo unidimensional)
27. Permite recorrer todos los elementos de un arreglo
(y de otras colecciones) sin tener que usar índices:
for (variable:colección)
sentencia;
Por ejemplo:
for (int elemento : a)
System.out.println(elemento);
Imprime cada elemento del vector en una línea diferente.
Este bucle se lee “para cada elemento de a”.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 27
2.2 Arreglos:bucle “for each”
28. Cuando se emplea esta sintaxis no se
llama a new:
int[] primerosPrimos ={2, 3, 5, 7, 11, 13};
Esta expresión reserva un vector nuevo y
lo rellena con los valores que van entre
llaves.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 28
2.2 Arreglos: iniciación.
29. Es posible darle valores iniciales a un
vector anónimo sin crear una nueva
variable:
primerosPrimos = new int [] {17,19,23,29,31,37};
La expresión anterior es una forma
abreviada de:
int[] anonimo = {17,19,23,29,31,37};
primerosPrimos = anonimo;
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 29
2.2 Arreglos: anónimos.
30. Las variables arreglos se pueden
copiar entre sí, en este caso ambas
variables se refieren al mismo
vector:
int[] numerosDeLaSuerte = primerosPrimos;
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 30
2.2 Arreglos: copiar.
2
3
5
7
11
12
primerosPrimos =
numerosDeLaSuerte=
31. Para copiar los valores de un vector
en otro emplear el método
arraycopy:
System.arraycopy(origenCopia, desdeElIndice,
destinoCopia, aPartirDelIndice, contador);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 31
2.2 Arreglos: copiar.
32. Para ordenar los números de un
vector, se puede utilizar uno de los
métodos sort de la clase Arrays:
int[] i = new int[1000];
…
Array.sort(i);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 32
2.2 Arreglos: ordenación.
34. 2.2 Arreglos: matrices.
Las matrices son arreglos
multidimensionales y se
emplea más de un índice para
acceder a sus elementos.
Se utilizan para crear tablas o
distribuciones.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 34
35. 2.2 Arreglos: matrices.
Declaración de una matriz:
double[][] saldos;
saldos = new double[x][y];
double[][] saldos = new double[x][y];
int[][] cuadradoMagico =
{
{16,3,2,13}, {5,10,11,8}, {9,6,7,12}, {4,15,14,1}
};
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 35
36. 2.2 Arreglos: matrices.
Los bucles “for each” no recorren
automáticamente todas las localidades
de una matriz, recorren las filas (arreglo
unidimensional). Para tener acceso a
todos los elementos de una matriz
bidimensional:
for (double[] fila: saldos)
for (double b: fila)
Hacer algo con b;
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 36
38. 2.3 Encapsulamiento y control de acceso
Una forma simple de definir una clase
en Java es:
class NombreClase
{
campo1
campo2
…
constructor1
constructor2
…
método1
método2
}
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 38
39. Ejemplo: clases PruebaEmpleado y Empleado
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 39
import java.util.*;
public class PruebaEmpleado
{
public static void main(String[] args)
{
//se llena el vector de personal con tres objetos de tipo Empleado
Empleado[] personal = new Empleado[3];
personal[0] = new Empleado(“Diego Medina”, 75000,2000,03,20);
personal[1] = new Empleado(“Lila E. Martinez”, 50000,2002,01,16);
personal[3] = new Empleado(“Isaias Antunez”, 30000,2004,05,08);
// se aumenta a todos el sueldo un 5%
for (Empleado e: personal)
e.subirSueldo(5);
40. Ejemplo: clases PruebaEmpleado y Empleado
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 40
// Se imprime la información de todos los objetos empleado
for (Empleado e:personal)
System.out.println(“nombre= “+ e.getNombre() +
“,sueldo=” + e.getSueldo()
“,fechaContrato=” + e.getFechaContrato());
}
} // termina clase PruebaEmpleado
41. Ejemplo: clases Empleado y PruebaEmpleado
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 41
class Empleado{
private String nombre;
private double sueldo;
private Date fechaContrato;
// constructor
public void Empleado(String n, double s, int anio, int mes, int dia) {
nombre = n;
sueldo = s;
GregorianCalendar calendario = new GregorianCalendar(anio, mes -1,
dia);
fechaContrato = calendario.getTime();
}
public String getNombre() {
return nombre;
}
}
42. Ejemplo: clases Empleado y PruebaEmpleado
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 42
public String getSueldo() {
return sueldo;
}
public String getFechaContrato() {
return fechaContrato;
}
public void subirSueldo(double porcentaje) {
double aumento = sueldo * porcentaje / 100;
sueldo +=aumento;
}
}
43. Constructores
El constructor tiene el mismo nombre
que la clase.
Una clase puede tener más de un
constructor.
Un constructor puede tener cero, uno
o más parámetros.
Los constructores siempre se invocan
mediante el operador new.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 43
44. Modificadores de acceso
Determinan desde qué
clases se puede acceder a
un determinado elemento.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 44
45. Modificadores de acceso
Los modificadores de acceso preceden
a la declaración de un elemento de la
clase (dato o método), de la siguiente
forma:
[modificador] tipo_variable nombre;
[modificador] tipo_devuelto nombreMetodo(lista_Argumentos)
{ …
Sentencias;
…
}
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 45
46. Modificadores de acceso
Tipos: public, private, protected
y el tipo por defecto, que no tiene
ninguna palabra clave asociada,
pero se suele conocer como
default o package-private.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 46
47. Modificadores de acceso
Las clases en si mismas pueden
declararse:
public - Todo el mundo puede usar la clase.
Se pueden crear instancias de esa clase,
siempre y cuando alguno de sus
constructores sea accesible.
sin modificador (default) - La clase puede
ser usada e instanciada por clases dentro
del package donde se define.
Las clases no pueden declararse ni
protected , ni private.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 47
48. Modificadores de acceso
public: todos pueden acceder al
elemento: si es un dato miembro todo
mundo lo puede ver o modificar, si es un
método, todo mundo lo puede invocar.
private: sólo se puede acceder al
elemento desde métodos de la
clase, o sólo puede invocarse el
método desde otro método de la
clase.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 48
49. Modificadores de acceso
protected: una característica a la que
solo pueden acceder los métodos de
esta clase, los de sus descendientes y
los de otras clases de este mismo
paquete. Se emplea en la Herencia.
Default: se puede acceder al
elemento desde cualquier clase del
package donde se define la clase.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 49
50. Resumen de los modificadores
de acceso
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 50
private: Visible solo dentro de
la clase.
public: Visible para todo el
mundo.
protected: Visible para el
package y todas las sublcases.
default: Visible para el
package.
51. Parámetros implícitos y explicítos
Empleado numero007 = new
Empleado(“James Bond”,100000,1950,1,1);
Numero007.subirSueldo(5);
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 51
Parámetro implícito:
Objeto de tipo Empleado
Parámetro explícito
52. Parámetros implícitos y explicítos
En todos los métodos, la palabra
reservada this se refiere al parámetro
implícito.
public void subirSueldo(double porcentaje)
{
double aumento = this.sueldo * porcentaje / 100;
this.sueldo +=aumento;
}
Este estilo es utilizado para distinguir a
los datos miembros de las variables
locales.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 52
53. public void setNombre(String nombre)
{ this.nombre = nombre;
}
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 53
54. Beneficios de la encapsulación
Es necesario obtener y modificar el
valor de un campo de dato, entonces
hay que proporcionar tres cosas:
un campo de datos privado;
un método de acceso público al campo,
generalmente inicia el nombre del
método con la palabra get; y
un método de modificación público del
campo, generalmente inicia el nombre
del método con la palabra set.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 54
55. Beneficios de la encapsulación
1. Se puede modificar la implementación
interna sin afectar a ningún código,
salvo el de los métodos de la clase.
Supongamos que el nombre completo se almacena en:
String nombreDePila;
String apellidos;
entonces el método getNombre se puede modificar para que
proporcione:
nombreDePila + “ ” + apellidos
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 55
56. Beneficios de la encapsulación
2. Los métodos de modificación pueden
efectuar una comprobación de
errores.
Por ejemplo, un método llamado
setSueldo podría no comprobar el
sueldo siempre que sea menor que 0.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 56
57. 2.4 Propiedades y métodos estáticos,
sobrecarga de métodos y alcance
de variables.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 57
58. Privilegio de acceso basado en clases
Un método puede acceder a los datos
privados del objeto al cual se aplique.
Un método puede acceder a los datos
privados de todos los objetos de su
clase.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 58
class Empleado
{ …
boolean equals(Empleado otro)
{
return nombre.equals(otro.nombre);
}
} Una llamada típica:
if (harry.equals(jefe))…
59. Métodos privados (private)
Los métodos privados solo se pueden
invocar dentro de la misma clase.
Esto es útil ya que si es eliminado
solo afecta a las operaciones de esa
clase.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 59
60. Campos finales
Los campos datos se pueden definir como
final.
Estos campos deben recibir un valor inicial
cuando se construye el objeto.
Después de construir el objeto, los campos de
datos ya no pueden ser modificados.
El modificador final es útil para los campos
cuyo tipo sea primitivo o una clase inmutable.
Una clase es inmutable si ninguno de sus
métodos puede modificar sus objetos (por
ejemplo la clase String).
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 60
61. Campos estáticos: variables
Si se define un campo como static,
entonces solo hay uno de estos campos
por clase.
Ejemplo: se desea asignar un número de
identificación exclusivo a cada empleado.
class Empleado
{ . . .
private int id;
private static int idSiguiente = 1;
}
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 61
62. Todo objeto de tipo Empleado posee su
propio campo id, pero sólo hay un
campo idSiguiente que se comparte
entre todos los ejemplares de la clase.
Esto es, si hay 1000 objetos de la clase
Empleado, entonces hay 1000 campos
de ejemplar id, uno para cada objeto.
Pero solo hay un campo static
idSiguiente.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 62
63. Aun cuando no hubiera objetos de tipo
Empleado, el campo idSiguiente estaría
presente. Pertenece a la clase, y no a
ningún objeto individual.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 63
Por ejemplo, el siguiente
método:
public void setId()
{
id = idSiguiente;
idSiguiente++;
}
Estableciendo el número de id
para Harry:
harry.setId();
El campo id de Harry queda fijado
y el valor del campo static
idSiguiente se incrementa.
64. Campos estáticos: constantes
Por ejemplo, la clase Math define una
constante static:
public class Math
{
. . .
public static final double PI = 3.14159265358979323846;
. . .
}
Esto implica que no necesita un objeto de la
clase Math para acceder al campo PI. Se puede
acceder a esta constante de la forma Math.PI.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 64
65. Métodos estáticos
No operan sobre objetos.
Por ejemplo el método pow de la
clase Math es un método estático:
Math.pow(x, a);
calcula la potencia xa
. No se necesita
ningún objeto Math para llevar a cabo
esta tarea, esto es, carece de
parámetro implícito.
No tienen el parámetro this.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 65
66. Métodos estáticos
Como no operan sobre objetos, no
pueden acceder a campos de
ejemplar desde los métodos static.
Los métodos static pueden acceder a
los campos static de su clase.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 66
Por ejemplo:
public static int getIdSiguiente()
{
return idSiguiente;
}
Para invocar a este método;
int n = Empleado.getIdSiguiente();
Note que se proporciona el nombre
de la clase
67. Métodos estáticos
Los métodos static se utilizan en dos
situaciones:
1.Cuando un método no necesita acceder
al estado del objeto porque todos los
parámetros necesarios se proporcionan
como parámetros explícitos. Por ejemplo:
Math.pow.
2.Cuando un método solo necesita acceder
a campos static de la clase. Por ejemplo:
Empleado.getIdSiguiente
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 67
68. Métodos Factoría
Los métodos de factoría son
funciones de creación en vez de
constructores => cambiar el tipo de
lo que se crea mediante redefinición.
Por ejemplo, la clase NumberFormat
emplea métodos de factoría que
producen objetos generadores de
formato para distintos estilos.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 68
69. Métodos Factoría
NumberFormat formatoMonetario =
NumberFormat.getCurrencyInstance();
NumberFormat formatoPorcentual =
NumberFormat.getPercentInstance();
double x = 0.1;
System.out.println(formatoMonetario.form
at(x)); // imprime $0.10
System.out.println(formatoPorcentual.form
at(x)); // imprime 10%
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 69
70. El método main
Los métodos estáticos se pueden
invocar sin tener objeto alguno.
El método main es un método
estático y por ende no actúa sobre
objetos.
Se ejecuta el método estático main, y
éste construye los objetos que
necesita el programa.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 70
71. Parámetros de los métodos
Formas de pasarle parámetros a un
método (o a una función):
Parámetros por valor: significa que el
método obtiene solamente el valor que
proporciona quien hace la llamada.
Parámetro por referencia: significa que el
método recibe la ubicación de la variable
que proporciona quien hace la llamada. De
modo que puede modificar el valor
almacenado de una variable que se le pase
por referencia.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 71
72. Parámetros de los métodos
Existen dos tipos de parámetros:
Tipos primitivos (números, valores boolean).
Referencias de objetos.
Un método no puede modificar un
parámetro de tipo primitivo.
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 72
73. Parámetros de los métodos
Parámetros por valor: suponga que un
método debe triplicar el valor del
parámetro,
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 73
public static void triplicarValor(double x)
{
x=3*x;
}
La llamada e este método:
double porcentaje = 10;
triplicarValor(porcentaje);
No funciona: Después de
la llamada al método, el
valor de porcentaje sigue
siendo 10:
1.X recibe como valor
una copia del valor de
porcentaje (10).
2.X se triplica, ahora vale
30, pero porcentaje sigue
siendo 10.
3.El método concluye y
la variable parámetro x
ya no se utiliza.
74. Parámetros de los métodos
Parámetros por referencia
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 74
public static void triplicarSueldo(Empleado x)
{
x.subirSueldo(200);
}
La llamada e este método:
leo = new Empleado(…);
triplicarSueldo(leo);
1. X recibe como valor
inicial una copia del
valor de leo (la
referencia de un
objeto).
2. Se aplica el método
subirSueldo a esa
referencia de objeto.
3. El método concluye y
la variable parámetro
x ya no se usa.
75. Parámetros de los métodos
En resumen:
Los métodos no pueden modificar
parámetros primitivos (números o
valores de tipo boolean).
Los métodos pueden cambiar el estado
de los parámetros tipo objeto.
Los métodos no pueden hacer que un
parámetro de tipo objeto pase a referirse
a un nuevo objeto.
Ejemplo: PruebaParametros.java
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 75
76. Fuente de información
Core JAVA Volumen I. Fundamentos
Cay S. Horstmann, Gary Cornell
Pearson Educación, 2006
Lina Ernestina Arias Hernández Instituto Tecnológico de la Laguna 76