Java Programming Objects
- Object name in java is a reference
- References are used to store address
- All objects created in heap with new statement
- There is no delete statement in java
- Deletion of object will be handled by garbage collector
- A special value null can be assigned
- Always passed by reference
Object Example
Let Student is a class
Student t; //here t is a reference variable
t=null; // Assigning a reference to null
// t=NULL Error here as Java is case sensitive null and NULL are different
t = new Student(); // created in heap
- Alias name can created
for example
Student y=t; // here y and t referring to same object in heap
Parameter Passing
t = new Student(); // created in heap
- Alias name can created
for example
Student y=t; // here y and t referring to same object in heap
Parameter Passing
- Primitives by value
- Objects by reference
Object as parameter parameter passing by reference
Example 1
class Car{
String make;
String getMake() { return make;}
void setMake(String m){make=m;}
}
class ChangeCarMake{
static void changeMake(Car p){
p.setMake("Suzuki");
}
}
class Test {
public static void main(String o[]){
Car c1=new Car();
c1.setMake("Honda");
ChangeCarMake.changeMake(c1); // passing a reference of class Car System.out.println(c1.getMake());
}
}
output
Suzuki
A program which Exchange Marks
class Student {
String name;
int marks;
Student ( ) { }
Student (String n, int m ){name=n; marks=m;}
String getName() {return name;}
int getMarks() {return marks;}
void setName(String n) {name=n;}
void setMarks(int m) { marks=m;}
}
class Test {
static void exchangeMarks(Student a, Student b){
int t=a.getMarks();
a.setMarks(b.getMarks());
b.setMarks(t);
}
public static void main(String o[]){
Student s1=new Student("Amir",20);
Student s2=new Student("Imran",90);
exchangeMarks(s1,s2);
System.out.println(s1.getName() + " "+ s1.getMarks());
System.out.println(s2.getName() + " "+ s2.getMarks());
}
}
Example 1
class Car{
String make;
String getMake() { return make;}
void setMake(String m){make=m;}
}
class ChangeCarMake{
static void changeMake(Car p){
p.setMake("Suzuki");
}
}
class Test {
public static void main(String o[]){
Car c1=new Car();
c1.setMake("Honda");
ChangeCarMake.changeMake(c1); // passing a reference of class Car System.out.println(c1.getMake());
}
}
output
Suzuki
A program which Exchange Marks
class Student {
String name;
int marks;
Student ( ) { }
Student (String n, int m ){name=n; marks=m;}
String getName() {return name;}
int getMarks() {return marks;}
void setName(String n) {name=n;}
void setMarks(int m) { marks=m;}
}
class Test {
static void exchangeMarks(Student a, Student b){
int t=a.getMarks();
a.setMarks(b.getMarks());
b.setMarks(t);
}
public static void main(String o[]){
Student s1=new Student("Amir",20);
Student s2=new Student("Imran",90);
exchangeMarks(s1,s2);
System.out.println(s1.getName() + " "+ s1.getMarks());
System.out.println(s2.getName() + " "+ s2.getMarks());
}
}
Comments
Post a Comment