Accesing static variable from another class in java
class, java, public, static
Solution
You can access a `public static` member of another class directly, using the notation `ClassName.memberName`:
public class Foo {
public static String bar = "hi there";
}
public class Thing {
public static void main(String[] args) {
System.out.println(Foo.bar); // "hi there"
}
}
`public static` data members are usually not a great idea (unless they've `final`), but if you need one, that's how you do it.
Problem
I had a queue implemented as linked list in my multithreaded server. I want to access this queue from another class. Both classes are in the same package. I tried making this queue as public static and accessing it through getter, but without success Can somebody tell me what is the exact problem. This is my code: Queue Declaration: ``` public static Queue<Request> q=new ConcurrentLinkedQueue<Request>(); public static void setQ(Queue<Request> q) { Connection.q = q; } public static Queue<Request> getQ() { return q; } ``` Accesing Queue: ``` Queue<Request> queue=new ConcurrentLinkedQueue<Request>(); queue=Connection.getQ(); ``` Adding Value to Queue in thread of connection ``` q.add(r); ```