![]() |
| ||
| public vs private Hi i just have a question, i was doing the pass midterm the question is asking that " Write a class Jacket, which has a boolean instance variable isReversible and a static int variable numJackets. There are no methods " correct Ans: public class Jacket { private boolean isReversible; private static int numJackets; } ------------------------ i just wondering for the last one can i write like : public static int numJackets; is that okay ? Thank you |
| ||
| Re: public vs private Yes u can , U have to understand the deferents between public and private . If u made it private this means u can only access from inside the class .But using it as public means u can also access this variable from outside the class .This is a simple explanation .:) |
| ||
| Re: public vs private that's just the same thing haha.. |
| ||
| Re: public vs private Quote:
Please read the forums rules before posting futher more specialy Keep It Pleasant section |
| ||
| Re: public vs private The whole point of declaring something private (which as it was explained means that it is only accessible within the scope of that class) is to prevent the value of the variable changing without supervision. In your case perhaps we would want the number of jackets to lie between 0 and 13 and so when its value is requested to be changed (through a method like setNumberOfJacks(int newNum) then we can control the way numJackets is changed. Of course there are other more relevant reasons for this as well.Now looking at the solution, as it stands, one would not be able to do anything with the class (unless you inherit) since there are no methods in the class. I'd say both variables should be declared public since the class looks the same as a C++ struct. Though this goes against the purpose of a class - a class is meant to have methods that control its behaviour. So why did you ask this question anyway? You put public and you got marked down? |
| All times are GMT -4. The time now is 3:32 am. |
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC