I am just starting to get into Object Oriented Programming in Java. I am curious about what the difference (if any) is between the 2 pieces of code below.
public class BuyAHouseInc
{
    // Instance variables
    private String firstName;
    private String surname;
    private String address;
    private int budget;
    // method to set the first name in the object
    public void setFirstName(String firstName)
    {
        this.firstName = firstName; // stores the first name
    }
    // method to retrieve the first name from the object
    public String getFirstName()
    {
        return firstName; // return value of first name to caller 
    }
    // method to set the surname in the object
    public void setSurname(String surname)
    {
        this.surname = surname; // stores the surname
    }
    // method to retrieve the surname from the object
    public String getSurname()
    {
        return surname; // return the value of surname to caller
    }
    // method to set the address in the object
    public void setAddress(String address)
    {
        this.address = address; // stores the address
    }
    // method to retrieve the address from the object
    public String getAddress()
    {
        return address; // return the value of address to caller
    }
    // method to set the budget in the object 
    public void setBudget(int budget) 
    {
        this.budget = budget; // store the budget
    }
    // method to retrieve the budget from the object
    public int getBudget()
    {
        return budget; // return the value of address to caller
    }
}
This is the 2nd piece of code;
public class BuyAHouseInc
{    
    public void displayClient(String firstName, String surname, String address, int budget)
    {
        System.out.println("Client Name: " + firstName + " " + surname);
        System.out.println("Address: " + address);
        System.out.println("Budget: " + "€" + budget);
    }
}
I prefer the 2nd piece of code here because its clearer to understand but I have been reading a lot on methods and objects and I can't figure out what the actual differences are. Are set and get methods secure ways of entering values?
 
     
     
     
    