blueJavaMAN
blueJavaMAN

Reputation: 13

How to reference to another object in Java?

I'm doing an homework question, and not sure what is wrong with my code. The question is: http://prntscr.com/1xe4gd.

My code so far:

public class Person //This is the class
{
    String firstName;
    String familyName;
    boolean isFemale;
    String partner;
}

My method so far is:

Person getAngelinaJolie()
    {
        Person person1 = new Person();
        person1.firstName = "Angelina";
        person1.familyName = "Jolie";
        person1.isFemale = false;
        person1.partner.firstName = "Brad";
        person1.partner.familyName = "Pitt";
        return person1;
    }

When I compile, error says "cannot find symbol - variable firstName". Could anyone please help me with this. Not sure why it cant find the symbol.

Upvotes: 0

Views: 124

Answers (2)

Iłya Bursov
Iłya Bursov

Reputation: 24229

You have defined String partner; in class Person, but I suppose you mean Person partner; then you will be able to set it's properties after person1.partner = new Person(); of course

here is the proper code:

Person getAngelinaJolie()
    {
        Person person1 = new Person();
        person1.firstName = "Angelina";
        person1.familyName = "Jolie";
        person1.isFemale = true;

        person1.partner = new Person();
        person1.partner.firstName = "Brad";
        person1.partner.familyName = "Pitt";
        person1.partner.isFemale = false;

        person1.partner.partner = person1;

        return person1;
    }

Upvotes: 1

user2837260
user2837260

Reputation: 181

public class Person //This is the class
{
    String firstName;
    String familyName;
    boolean isFemale;
    Person partner;
}

and the same method now

Person getAngelinaJolie()
    {
        Person person1 = new Person();
        person1.firstName = "Angelina";
        person1.familyName = "Jolie";
        person1.isFemale = false;
        person1.partner.firstName = "Brad";
        person1.partner.familyName = "Pitt";
        return person1;
    }

now person.partner.firstname will refer to the already defined Person partner in Person

Upvotes: 0

Related Questions