Solved

Passing a Boolean flag from one class to another

Posted on 2004-08-24
16
209 Views
Last Modified: 2010-05-18
Hi Experts

I am a newbie to java, Simple question, how do i pass a boolean flag from one class to another...

I have a class Library

public void library()
    {
       open = true;
    }

why cant i say this in my other class "Customer"

public void borrowBook(String Title)
   
      private Library aLibrary;

      if (aLibrary.open == true)
        {....

If i do this i get boolean canot be derefrenced....



0
Comment
Question by:baz_can_fix_it
  • 8
  • 6
  • 2
16 Comments
 
LVL 92

Expert Comment

by:objects
ID: 11888658
how/where is the open variable defined?
0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11888714
Hi objects, i owe you 50 which i'll add to this question...

its in the Library class

public class Library {  
    private List aBook= new ArrayList();
    public boolean open = true;
.....

Sorry typo

that meant to be

public void libStatus() // not public void library()

    {
       open = true;
    }
Cheers

PS hope i didnt get you in trouble...

0
 
LVL 92

Expert Comment

by:objects
ID: 11888743
that all looks fine. can you post the complete code for both classes and I'll see what the problem is.

> PS hope i didnt get you in trouble...

don't worry about it :)
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11888854
import java.util.*;

public class Customer
{
    private String cusName;
    private double amount;
    private Library aLibrary;

    public Customer (String name, double funds)
    {
        cusName = name;
        amount = funds;
       
    }
   
    public void buyBOOK (String title)
    {
        if (aLibrary.closed == false)
        {
           //do somestuff
        }
        else
        System.out.println("The Library is closed!");
    }
   
}


///////////////////////////////////////


public class Library {  
    private List aBook = new ArrayList();
    public boolean close = true;
    private String bookTitle;
    private String theLibraryName;
    private double till;
    private double total;
    private int count=0;
   

    public Library (String theLibraryName)
    {
        this.theLibraryName = theLibraryName;    
    }

    public void buyBooks(String newTitle, String ratings,double cost)
    {
            if (close == false)
            {
            till = cost;
            total = total + till;
            aBook.add(new BOOK(newTitle,ratings,cost));
        }
        else
        System.out.println("The Library is Closed, Please open Library first");
    }
   
     public void closeLibrary()
     {
         if (close == false)
            {
         double result = 0.0;
         result = total;
         close = true;
         System.out.println("Total takings for the day is:  $"+result);
            }
         else
         System.out.println("The Library is already Closed, Please open Library first");
         double result = 0.0;
         //return result;
     }


    public void openLibrary()
    {
        closed = false;
        double result = 0.0;
        total = 0;
    }

}



plz note i used close instead of my original open...

cheers
0
 
LVL 92

Expert Comment

by:objects
ID: 11888877
>     if (aLibrary.closed == false)

should be:

    if (aLibrary.close == false)
0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11888901
sorry that was a typo here it is actually all closed not close...i re typed it becuase if i want to paste the whole code is too much...

Cheers
0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11888958
I also get null point exception in here...

    public void buyBOOK (String title)
    {
        if (aLibrary.closed == false)
        {
           //do somestuff
        }
        else
        System.out.println("The Library is closed!");
    }
0
 
LVL 92

Accepted Solution

by:
objects earned 50 total points
ID: 11888972
aLibrary never gets set so it is null
0
 
LVL 19

Expert Comment

by:ramazanyich
ID: 11889654
your if statement should be
if(!aLibrary.closed){
...
}

0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11890910
Hi objects, what should i be doing...

ramazanich, I still get null point exception....

emmm i thought this was going to be simple....

Chhers
0
 
LVL 19

Assisted Solution

by:ramazanyich
ramazanyich earned 20 total points
ID: 11891286
you didn't initialize aLibary in your Customer class.
Add following line to constructor of Customer:

aLibrary = new Library("some name");
0
 
LVL 92

Expert Comment

by:objects
ID: 11898204
perhaps pass a library to you ctor:

    public Customer (Library lib, String name, double funds)
    {
        aLibrary = lib;
        cusName = name;
        amount = funds;
       
    }
0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11898312
Ok got it working...here is how

I placed this in my Library Class

public boolean IsClosed()
    {
      return closed;      
    }

now in my Customer Class I can say

if (!aShop.IsClosed())...

I'll give you guys some point for trying to help me anyway...thanx again

0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11898316
typo...if (!aLibrary.IsClosed())...

Cheers
0
 
LVL 1

Author Comment

by:baz_can_fix_it
ID: 11898328
Objects... here is the 50 i owe you...

ramazanyich...20 for you :)

Thank you both
0
 
LVL 92

Expert Comment

by:objects
ID: 11898372
Thanks mate :)
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
web services creation SOAP vs REST 5 80
Detect Closed Loops (circles, figure-8s, etc) in PNG Images 6 74
Java: anonymous class 4 37
Java program running SQL query 5 47
An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
Viewers learn about the “while” loop and how to utilize it correctly in Java. Additionally, viewers begin exploring how to include conditional statements within a while loop and avoid an endless loop. Define While Loop: Basic Example: Explanatio…
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

713 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question