Question about return and access control

F

Felipe

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.
 
G

Gerald Murray

Felipe said:
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.
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,011
Latest member
AjaUqq1950

Latest Threads

Top