Question about return and access control

Discussion in 'Ruby' started by Felipe, Mar 15, 2006.

  1. Felipe

    Felipe Guest

    I'm reading PickAxe book and just finished reading chapter 3, which
    talks about classes, objects and variables. While this chapter (and the
    whole book so far) was very informative, I have two doubts:

    - return seems to be used when defining methods and nowhere else. Why
    use it (why not use puts)?
    - Why and where specify access control (public, protected and private
    methods)? The examples in the book weren't clear enough.

    Thanks in advance.
     
    Felipe, Mar 15, 2006
    #1
    1. Advertising

  2. Felipe wrote:
    > I'm reading PickAxe book and just finished reading chapter 3, which
    > talks about classes, objects and variables. While this chapter (and the
    > whole book so far) was very informative, I have two doubts:
    >
    > - return seems to be used when defining methods and nowhere else. Why
    > use it (why not use puts)?


    return <value> and puts <value> are distinctly different.
    "puts" always sends the value to STDOUT, and the control passes to the
    next statement.
    "return" makes the <value> available to its receiver (at the caller of
    the method in where the "return" statement exists), and control
    transfers to the next statement after that receiver.

    > - Why and where specify access control (public, protected and private
    > methods)? The examples in the book weren't clear enough.


    Chapter 3 is just an introduction to access control. You then know
    that there ARE these differences. Why these differences exists, and
    how to know what methods of a class or module can be accessed, and
    under what circumstances, becomes clearer in later chapters.
    When studying class inheritance, you will see that the types of
    control affect which of the methods declared are available to an
    instance of
    a class that has inheritance. Examples there will make the
    distinctions
    clear. (and the error messages from the interpreter provide any help
    needed.) Access control is important concept because it improves the
    reliability of the program, and can limit possible bugs.

    > Thanks in advance.
     
    Gerald Murray, Mar 16, 2006
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Kevin Spencer
    Replies:
    3
    Views:
    3,238
    Doc Wally
    Oct 11, 2003
  2. Ganesh Gella
    Replies:
    4
    Views:
    367
    Stuart Gerchick
    Nov 12, 2004
  3. Greenhorn
    Replies:
    15
    Views:
    852
    Keith Thompson
    Mar 6, 2005
  4. xz
    Replies:
    9
    Views:
    545
    James Kanze
    Jan 8, 2008
  5. w i l l
    Replies:
    4
    Views:
    251
    Dan Brussee
    Jul 4, 2003
Loading...

Share This Page