I have two classes, A and B.
B contains the instances of A. I want to return instance of A from B by its name:
class A
{
    public String name;
    public A (String name)
    {
        this.name = name;
    }
}
class B
{
    public A a1;
    public A a2;
    public A a3;
    public B ()
    {
        this.a1 = new A ("a1");
        this.a2 = new A ("a2");
        this.a3 = new A ("a3");
    }
    public A get_A_byName (String name)
    {
        // Is it possible to write something like this? B will always contain only instances of A
        for (A a : B.variables)
        {
            if (a.name.equals(name))
            {
                return a;
            }
            // Or in case A doesn't have a variable "name", can I get an A instance by its declared name in B?
            if (a.getClass().getName().equals(name))
            {
                return a;
            }
        }
    }
}
Is it possible to do things described in code's comments? Thanks in advance.