/********************************************************** Suponemos una clase TMenu que cuenta con una propiedad indexada llamada contenidos. Contenidos es un array de cadenas de caracteres y debe disponer de métodos para rellenar el array en si o cada uno de sus elementos por separado, indicando su posición en el vector. De igual forma, precisa de métodos para devolver el array al completo o alguna cadena especificada por su posición. ***********************************************************/ package ejemplo_propiedad_indexada; import java.beans.*; import java.io.Serializable; /** * * @author paco */ public class TMenu implements Serializable { private String[] contenidos = new String[0]; public String getContenidos(int pos){ return contenidos[pos]; } public String[] getContenidos(){ return contenidos; } public void setContenidos(int pos, String miembro){ contenidos[pos] = miembro; } public void setContenidos(String[] nuevosContenidos){ if(contenidos == null){ contenidos = new String[0]; } this.contenidos = nuevosContenidos; } } /******************************************************** Prueba de la clase TMenu ********************************************************/ TMenu menu = new TMenu(); menu.setContenidos(new String[]{ "Archivo", "Editar", "Ver"}); // En la posición 3 tenemos el menú para el formato menu.setContenidos(3, "Formato"); // En elemento se almacenará Editar String elemento = menu.getContenidos(1); /*************************************************** * También podemos crear otro menú para otra página * de la aplicación que tenga otros contenidos */ TMenu menu2 = new TMenu(); menu2.setContenidos(new String[]{ "Abrir Proyecto", "Nuevo Proyecto", "Guardar"}); // En la posición 3 tenemos Guardar Como y en la 4 Guardar todo menu2.setContenidos(3, "Guardar como..."); menu2.setContenidos(4, "Guardar Todo"); // En miembro se almacenará Guardar Como String elemento = menu2.getContenidos(3);