Java Cycling Championship es una simulación de un campeonato ciclista desarrollada en Java como proyecto final de la asignatura Diseño y Programación (DP) del Grado en Ingeniería Informática y de Computadores (GIIC) en la Universidad de Extremadura (UEX). Implementa herencia, polimorfismo,
Comparators,Enumsy lectura de ficheros.
El proyecto modela el comportamiento de un campeonato ciclista por etapas, con equipos, ciclistas de distintas categorías y bicicletas de diferentes tipos. Los conceptos aplicados incluyen:
- Herencia y polimorfismo: jerarquía de ciclistas (
Novato,Experimentado,Estrella) y bicicletas (Estándar,Rápida,Prototipo). - Comparators: ordenación personalizada de ciclistas y equipos por tiempo, puntos y otros criterios.
- Enums: tipos de etapa, categorías de ciclista y tipo de bicicleta.
- Lectura de ficheros: carga de datos iniciales de equipos y ciclistas desde ficheros de texto.
- Organización del campeonato: gestión de etapas, clasificaciones y resultados.
Java_Cycling_Championship/
├── src/
│ └── demo/
│ ├── Bicicleta.java # Clase base de bicicleta
│ ├── BicicletaRapida.java # Hereda de Bicicleta
│ ├── BicicletaPrototipo.java # Hereda de Bicicleta
│ ├── Ciclista.java # Clase base de ciclista
│ ├── CiclistaNovato.java # Hereda de Ciclista
│ ├── CiclistaExperimentado.java # Hereda de Ciclista
│ ├── CiclistaEstrella.java # Hereda de Ciclista
│ ├── Equipo.java # Gestión de equipos y sus ciclistas
│ ├── Etapa.java # Representación de una etapa del campeonato
│ ├── Organizacion.java # Coordinación general del campeonato
│ ├── comparadores/ # Comparators para ordenación de clasificaciones
│ ├── enums/ # Enums de tipo de etapa, bicicleta y ciclista
│ └── datosIniciales/ # Clase(s) de carga de datos desde ficheros
├── ficheros/ # Ficheros .txt con datos de equipos y ciclistas
└── Entrega Final. Proyecto_2022-2023.pdf # Enunciado oficial del proyectoClona el repositorio:
git clone https://github.com/sorgazb/Java_Cycling_Championship.gitImporta el proyecto en Eclipse IDE:
File > Import > Existing Projects into Workspace
Selecciona la carpeta: Java_Cycling_Championship/Java_Cycling_ChampionshipEjecuta la clase principal desde Eclipse con Run > Run As > Java Application.
| Clase Base | Subclases | Descripción |
|---|---|---|
Ciclista |
CiclistaNovato, CiclistaExperimentado, CiclistaEstrella |
Tres perfiles con atributos y comportamientos distintos |
Bicicleta |
BicicletaRapida, BicicletaPrototipo |
Tipos de bicicleta con diferentes características |
Haz fork del repositorio.
Crea una rama de trabajo:
git checkout -b feature/nueva-funcionalidadRealiza tus cambios y haz commit.
Abre un Pull Request describiendo tus mejoras.

Diseño y Programación (DP) · Grado en Ingeniería Informática y de Computadores · Universidad de Extremadura
Sergio Orgaz Bravo
