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… { // ... } }
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… { // ... } }
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
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
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
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| ... }