# How can't i modify the to\_s method in Integer Class?

**URL:** <https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049>\
**Category:** Ruby\
**Created:** [August 23, 2006, 1:14am UTC](https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049 "2006-08-23T01:14:35Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![grabmail](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/90db22/32.png) [@grabmail](https://www.ruby-forum.com/u/grabmail)\
**Post date:** [August 23, 2006, 1:14am UTC](https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049/1 "2006-08-23T01:14:35Z")

</div>

class Integer

def to\_s  
‘9’  
end

end

puts 5.to\_s

I’m still getting 5.

---

<div class="post-metadata">

**Author:** ![grabmail](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/90db22/32.png) [@grabmail](https://www.ruby-forum.com/u/grabmail)\
**Post date:** [August 23, 2006, 1:56am UTC](https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049/2 "2006-08-23T01:56:14Z")

</div>

Grab Mail wrote:

> I’m still getting 5.  
> There’s also the gotcha of redefining core methods - other core methods  
> just might call directly their implementations in C without going  
> through the interpreter.

Try not to rely on core method redefining unless you know you’ll always  
be calling the redefined methods directly.

David V.

---

<div class="post-metadata">

**Author:** ![grabmail](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/90db22/32.png) [@grabmail](https://www.ruby-forum.com/u/grabmail)\
**Post date:** [August 23, 2006, 3:10am UTC](https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049/3 "2006-08-23T03:10:19Z")

</div>

You shoud use Fixnum class instead of Integer.

---

<div class="post-metadata">

**Author:** ![grabmail](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/90db22/32.png) [@grabmail](https://www.ruby-forum.com/u/grabmail)\
**Post date:** [August 23, 2006, 3:10am UTC](https://www.ruby-forum.com/t/how-cant-i-modify-the-to-s-method-in-integer-class/66049/4 "2006-08-23T03:10:19Z")

</div>

Grab Mail wrote:

> I’m still getting 5.

#to\_s is defined in Fixnum, a subclass of Integer. Try this:

class Fixnum  
def to\_s  
‘9’  
end

end

puts 5.to\_s
