Sobrecarga de operadores

Solo disponible en BuenasTareas
  • Páginas : 2 (461 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de marzo de 2011
Leer documento completo
Vista previa del texto
[pic]

Los operadores de java son muy parecidos en estilo y funcionamiento a los de C. Tanto c, como c++, como java, proporcionan un conjunto de operadores para poder realizar acciones sobre uno odos operando. Un operador que actúa sobre un solo operando es un operador unario, y un operador que actúa sobre dos operando es un operador binario.

La sobrecarga de operadores permite redefinirciertos operadores, como "+" y "-", para usarlos con las clases que hemos definido. Se llama sobrecarga de operadores porque estamos reutilizando el mismo operador con un número de usos diferentes, y elcompilador decide cómo usar ese operador dependiendo sobre qué opera.
La sobrecarga de operadores sólo se puede utilizar con clases, no se pueden redefinir los operadores para los tipos simplespredefinidos.
Los operadores lógicos && y || pueden ser sobrecargados para las clases definidas por el programador, pero no funcionarán como operadores de short circuit. Todos los miembros de laconstrucción lógica serán evaluados sin ningún problema en lo que se refiere a la salida. Naturalmente los operadores lógicos predefinidos continuarán siendo operadores de short circuit como era de esperar,pero no los sobrecargados.
Los siguientes operadores no pueden ser sobrecargados:
• El operador ternario?
• El operador de acceso a una clase o estructura : .
• El operador scope :: .¿Por qué java no soporta la sobre carga de operadores?

Java no soporta sobrecarga de operadores, aunque el sistema internamente la utiliza, pero está ocultada al programador, por ejemplo si tefijas al hacer un 
Int ejemplo=2+1;
En java eso es válido y le asigna un 3 a la variable ejemplo  la funcionalidad fue sumar, sin embargo en este:
String ejemplo="hola"+"mundo";
El operador + seutiliza con otra finalidad: Concatenar, Java si usa la sobrecarga de operadores, pero esta oculta para el programador, ósea no te permite usarla.
¿Porque?
Básicamente para no llevar a confusión ,...
tracking img