| 4D v20.1Super | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v20.1
 Super 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Super {( param {; param2 ; ... ; paramN} )} -> Resultado | ||||||||
| Parámetro | Tipo | Descripción | ||||||
| param | Mixed |   | Parámetro(s)a pasar al constructor padre | |||||
| Resultado | Objeto |   | Padre del objeto | |||||
El comando Super realiza llamadas a la superclase.
Super se ha introducido por dos propósitos diferentes:
  // en el constructor myClass
 C_TEXT($1;$2)
 Super($1) //llama al constructor de la superclase con un parámetro texto
 This.param:=$2 // utiliza el segundo parámetro Super.doSomething(42) //llama a la función "doSomething" declarada en superclasesEste ejemplo ilustra el uso de Super en un constructor de clase. Se llama al comando para evitar duplicar las partes del constructor que son comunes entre las clases Rectangle y Square.
  //Clase: Rectangle
 
 Class constructor
 C_LONGINT($1;$2)
 This.name:="Rectangle"
 This.height:=$1
 This.width:=$2
 
 Function sayName
 ALERT("Hi, I am a "+This.name+".")
 
 Function getArea
 C_LONGINT($0)
 $0:=This.height*This.width
  //Clase: Square
 
 Class extends Rectangle
 
 Class constructor
 C_LONGINT($1)
 
  // Llama la clase constructor padre con las longitudes
  // suministrado para el ancho y la alto del Rectangle
 Super($1;$1)
 
  // En las clases derivadas, se debe llamar a Super antes que
  // pueda utilizar 'This'
 This.name:="Square"Este ejemplo ilustra el uso de Super en un método miembro de clase.
Creó la clase Rectangle con una función:
  //Clase: Rectangle
 
 Function nbSides
 C_TEXT($0)
 $0:="I have 4 sides"También creó la clase Square con una función que llama a la función de superclass:
  //Clase: Square
 
 Clase extiende Rectangle
 
 Function description
 C_TEXT($0)
 $0:=Super.nbSides()+" which are all equal"Entonces puedes escribir en un método proyecto:
 C_OBJECT($square)
 C_TEXT($message)
 $square:=cs.Square.new()
 $message:=$square.description() //tengo 4 lados los cuales son todos iguales
	Producto: 4D
	Tema: Lenguaje
	Número 
        1706
        
        
        
	
	Creado por: 4D v18 R3
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de lenguaje 4D ( 4D v20)
	
	
	Manual de lenguaje 4D ( 4D v20.1)
	
	
	
 Añadir un comentario
Añadir un comentario