introducción a la programación orientada a objetos redefinición y sobrecarga dada la siguiente...
TRANSCRIPT
![Page 1: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/1.jpg)
Introducción a la Programación Orientada a Objetos
Redefinición y Sobrecarga
Dada la siguiente jerarquía de clases:
Alfa
Delta
Beta
![Page 2: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/2.jpg)
Introducción a la Programación Orientada a Objetos
class Alfa{protected int n;protected String s;public Alfa(){ n= 10; s= new String ("Alfa");}public String p(int x){ return s+" p n: "+n+" x: "+x;}public String q(int x){ return s+" q n: "+n+" x: "+x;}public String r(int x){ return s+" r int n: "+n+" x: "+x;}public String r(String x){ return s+" r String n: "+n+" x: "+x;}}
Redefinición y Sobrecarga
![Page 3: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/3.jpg)
Introducción a la Programación Orientada a Objetos
class Beta extends Alfa{protected int m;protected String ss;public Beta(){ m= 11; ss= new String ("Beta");}public String p(int x){ return ss+" p m: "+m+" x: "+x;}public String q(String x){ return ss+" q m: "+m+" x: "+x;}}
Redefinición y Sobrecarga
![Page 4: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/4.jpg)
Introducción a la Programación Orientada a Objetos
class Delta extends Beta{protected int l;protected char ch;public Delta(){ l= 12; ch = 'D';}public String q(int x){ return ch+" q l: "+l+" x: "+x;}public String t(int x){ return ch+" t l: "+l+" x: "+x;}public String v(char c,int x){ String sss= ch+" v l: "+l+" x: "+x +" c: "+c; return sss;}}
Redefinición y Sobrecarga
![Page 5: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/5.jpg)
Introducción a la Programación Orientada a Objetos
Los objetos referenciados por variables de una clase sólo podrán recibir los mensajes que corresponden al comportamiento de esa clase.
Si una variable declarada de una clase referencia a un objeto de una clase derivada recibe un mensaje que corresponde a un método redefinido en la clase derivada, la ligadura se establece con el método redefinido.
Si una variable declarada de una clase referencia a un objeto de una clase derivada y recibe un mensaje que corresponde a un método sobrecargado en la clase derivada, la ligadura se establece de acuerdo al tipo estático.
Redefinición y Sobrecarga
![Page 6: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/6.jpg)
Introducción a la Programación Orientada a Objetos
class HP{
public static void main (String a[]){
Alfa a1 = new Alfa(); Alfa a2 = new Beta(); Beta a3 = new Beta(); Alfa a4 = new Delta(); Beta a5 = new Delta(); Delta a6 = new Delta(); …}}
Redefinición y Sobrecarga
![Page 7: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/7.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){… System.out.println(a1.p(5)); System.out.println(a2.p(5)); System.out.println(a3.p(5)); System.out.println(a4.p(5)); System.out.println(a5.p(5)); System.out.println(a6.p(5)); … }}
Redefinición y Sobrecarga
![Page 8: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/8.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.q(6)); System.out.println(a2.q(6)); System.out.println(a3.q(6)); System.out.println(a4.q(6)); System.out.println(a5.q(6)); System.out.println(a6.q(6)); …}}
Redefinición y Sobrecarga
![Page 9: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/9.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.r(7)); System.out.println(a2.r(7)); System.out.println(a3.r(7)); System.out.println(a4.r(7)); System.out.println(a5.r(7)); System.out.println(a6.r(7));… }}
Redefinición y Sobrecarga
![Page 10: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/10.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.r("xyz")); System.out.println(a2.r("xyz")); System.out.println(a3.r("xyz")); System.out.println(a4.r("xyz")); System.out.println(a5.r("xyz")); System.out.println(a6.r("xyz"));…}
Redefinición y Sobrecarga
![Page 11: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/11.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.q("q8")); System.out.println(a2.q("q8")); System.out.println(a3.q("q8")); System.out.println(a4.q("q8")); System.out.println(a5.q("q8")); System.out.println(a6.q("q8")); … }}
Redefinición y Sobrecarga
![Page 12: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/12.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.t(9)); System.out.println(a2.t(9)); System.out.println(a3.t(9)) System.out.println(a4.t(9)); System.out.println(a5.t(9)); System.out.println(a6.t(9)); … }}
Redefinición y Sobrecarga
![Page 13: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/13.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.v(7)); System.out.println(a2.v(7)); System.out.println(a3.v(7)); System.out.println(a4.v(7)); System.out.println(a5.v(7)); System.out.println(a6.v(7)); }}
Redefinición y Sobrecarga
![Page 14: Introducción a la Programación Orientada a Objetos Redefinición y Sobrecarga Dada la siguiente jerarquía de clases: Alfa Delta Beta](https://reader036.vdocuments.pub/reader036/viewer/2022082806/551cf397550346357a8b54f9/html5/thumbnails/14.jpg)
Introducción a la Programación Orientada a Objetos
class HP{public static void main (String a[]){ … System.out.println(a1.v("x",7)); System.out.println(a2.v("x",7)); System.out.println(a3.v("x",7)); System.out.println(a4 v("x",7)); System.out.println(a5 v("x",7)); System.out.println(a6 v("x",7)); }}
Redefinición y Sobrecarga