C#
Converter converter = new Converter();
Error: class Converter is abstract, it
cannot be instantiated
public abstract partial sealed class Converter {
protected override static virtual double D… {
// ...
}
}
Slide 26
Slide 26 text
C#
class CurrencyConverter : Converter { }
Error: class Converter is sealed, it
cannot be inherited from
public abstract partial sealed class Converter {
protected override static virtual double D… {
// ...
}
}
Slide 27
Slide 27 text
Ruby
class Converter
def degree_to_farenheit(degree)
# ...
end
end
converter = Converter.new
converter.degree_to_farenheit(30)
class Converter
def degree_to_farenheit(degree)
return degree * 1.8 + 32
end
end
class Converter
def degree_to_farenheit(degree)
degree * 1.8 + 32
end
end
class Integer
def times
!
!
!
end
end
class Integer
def times(&block)
!
!
!
end
end
class Integer
def times(&block)
for n in [1..self]
!
end
end
end
class Integer
def times(&block)
for n in [1..self]
block.call
end
end
end
Slide 57
Slide 57 text
class Integer
def times(&block)
for n in [1..self]
block.call
end
end
end
class Integer
def times(&block)
for n in [1..self]
block.call(n)
end
end
end
5.times do
print “Hello world”
print “Number of calls: #{…}”
end
5.times do |n|
print “Hello world”
print “Number of calls: #{…}”
end
5.times do |n|
print “Hello world”
print “Number of calls: #{n}”
end
module MyModule
def my_module_method
# ...
end
end
!
MyModule.new #=> Error
class MyClass
include MyModule
end
!
instance = MyClass.new
instance.my_module_method
Slide 61
Slide 61 text
class Person
!
!
!
!
!
end
class Person
include Comparable
!
!
!
!
end
class Person
include Comparable
!
def <=>(other)
self.surname <=> other.surname
end
end
person1 <= person2
person1 < person2
person1 >= person2
person1 > person2
person1 == person2
person1 != person2
Slide 62
Slide 62 text
class Set
!
!
!
!
!
end
class Set
include Enumerable
!
!
!
!
end
class Set
include Enumerable
!
def each(&block)
collection.each(&block)
end
end
people = Set.new(array)
!
people.any?
people.find { |person| ... }
people.include?(...)
people.select { |person| ... }