Friday, 18 December 2015

Java Tutorial : Java this keyword (pass this to constructor)


Click here to watch in Youtube : 
https://www.youtube.com/watch?v=-0Fd6G3Va5o&list=UUhwKlOVR041tngjerWxVccw

Student.java
public class Student
{

    private String name;
    private int age;
    private Address address;

    public Student(String name, int age, Address address)
    {
        this.name = name;
        this.age = age;
        this.address = address;
    }

    public String getName()
    {
        return name;
    }

    public void setName(String name)
    {
        this.name = name;
    }

    public int getAge()
    {
        return age;
    }

    public void setAge(int age)
    {
        this.age = age;
    }

    public Address getAddress()
    {
        return address;
    }

    public void setAddress(Address address)
    {
        this.address = address;
    }

}
Address.java
public class Address
{

    private String country;
    private String city;

    public Address(String country, String city)
    {
        this.country = country;
        this.city = city;
    }

    public String getCountry()
    {
        return country;
    }

    public void setCountry(String country)
    {
        this.country = country;
    }

    public String getCity()
    {
        return city;
    }

    public void setCity(String city)
    {
        this.city = city;
    }

    public Student getStudentWithAddress(String name, int age)
    {
        /*
         * The this keyword can be passed as argument in the constructor call.
         * 
         * It is useful if we have to use one object in multiple classes.
         */
        Student student = new Student(name, age, this);
        return student;
    }
}
StudentTest.java
public class StudentTest
{

    public static void main(String[] args)
    {

        Address addressObject = new Address("India","Bangalore");
        Student student = addressObject.getStudentWithAddress("Peter", 27);
        System.out.println("Name : "+student.getName());
        System.out.println("Age  : "+student.getAge());

        System.out.println("Country : "+student.getAddress().getCountry());
        System.out.println("City    : "+student.getAddress().getCity());
    }

}
Output
Name : Peter
Age  : 27
Country : India
City    : Bangalore
Click the below link to download the code:
https://sites.google.com/site/javaee4321/java/ThisKeyWordDemoPassThisToConsApp.zip?attredirects=0&d=1

Github Link:
https://github.com/ramram43210/Java/tree/master/BasicJava/ThisKeyWordDemoPassThisToConsApp

Bitbucket Link:
https://bitbucket.org/ramram43210/java/src/f95cef6f929a55d126484d6f51e7b129a718c586/BasicJava/ThisKeyWordDemoPassThisToConsApp/?at=master

See also:
  • All JavaEE Viedos Playlist
  • All JavaEE Viedos
  • All JAVA EE Links
  • Servlets Tutorial
  • All Design Patterns Links
  • JDBC Tutorial
  • Java Collection Framework Tutorial
  • JAVA Tutorial
  • No comments:

    Post a Comment