En esta ocasión crearemos una clase base llamada Persona y dos clases hijas:
- Alumno y
- Profesor
Empezamos creando la clase Persona, con dos propiedades:
- nombre y
- edad
class Persona
attr_accessor :nombre , :edad
def initialize(nombre,edad)
@nombre, @edad=nombre, edad
end
#setters y getters
#setter
def nombre=(nombre)
@nombre=nombre
end
#getter
def nombre
@nombre
end
#setter
def edad=(edad)
@edad=edad
end
#getter
def edad
@edad
end
end
¿Cómo se puede heredar en Ruby?
Se debe seguir esta síntaxis:
claseBase < claseHija
...
...
end
Ahora las clases hijas:Alumno y Profesor:
class Alumno < Persona
attr_accessor :no_cta
def initialize(no_cta)
@no_cta=no_cta
end
#setter
def no_cta=(no_cta)
@no_cta=no_cta
end
#getter
def no_cta
@no_cta
end
end
class Profesor < Persona
attr_accessor :materias
def initialize(materias)
@materias=materias
end
#setter
def materias=(materias)
@materias=materias
end
#getter
def materias
@materias
end
end
#main
begin
alumno=Alumno.new(2132)
alumno.nombre=("Andrea Landa")
alumno.edad=(18)
profesor=Profesor.new(["matematicas","fisica"])
profesor.nombre=("Mario Pedrosa")
profesor.edad=(45)
puts "Alumno:"
puts "\tno. cta: #{alumno.no_cta}"
puts "\tnombre: #{alumno.nombre}"
puts "\tedad: #{alumno.edad}"
puts "Profesor:"
puts "\tmaterias: #{profesor.materias}"
puts "\tnombre: #{profesor.nombre}"
puts "\tedad: #{profesor.edad}"
rescue Exception => e
puts "Error: #{e}"
end
Puedes guardar el archivo como diamante.rb
Links
http://www.cristalab.com/blog/por-que-aprender-ruby-on-rails-c109181l/
No hay comentarios:
Publicar un comentario