1| require 'klasse2.rb' # Fortsetter der vi slapp... 2| 3| # Arv - alle studenter er en submengde av alle personer. 4| class Student < Person 5| def initialize( etternavn, fornavn, alder = 0, studiested = "NTNU" ) 6| # kall super-klassens versjon av metoden 7| super( etternavn, fornavn, alder ) 8| @studiested = studiested 9| @karakterer = Array.new # Eventuelt [] 10| end 11| 12| # redefinerer Person#to_s metoden. 13| def to_s 14| "#{@etternavn}, #{@fornavn} - studerer ved #{@studiested}." 15| end 16| 17| def ta_eksamen( karakter ) 18| @karakterer.push karakter 19| end 20| 21| def karaktersnitt 22| sum = 0 23| @karakterer.each{ |karakter| 24| sum += karakter 25| } 26| sum.to_f / @karakterer.size 27| end 28| 29| end 30| 31| if __FILE__ == $0 # Kun når vi kjører denne filen: 32| flinkis = Student.new("Einstein", "Al", 128, "Mensa") 33| flinkis.ta_eksamen( 1.0 ) 34| flinkis.ta_eksamen( 2.0 ) 35| puts flinkis #=> "Einstein, Al - studerer ved Mensa." 36| puts flinkis.karaktersnitt #=> 1.5 37| end |
et alias for superklassens versjon av den metoden vi er i nå.