Add assignment-1 files

parent 35bddfdb
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="eb83f898-ce72-4016-9e31-9b6d7a32bbb2" name="Changes" comment="" />
<list default="true" id="eb83f898-ce72-4016-9e31-9b6d7a32bbb2" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assignment_1.iml" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
......
public class CalculateArea {
CalculateArea() {
int n;
}
int cube(int n) {
return (int) Math.pow(n, 3);
}
}
// Example of composition
class Car {
private Engine carEngine;
public String name;
public int mileage;
// Initialize constructor
public Car(String name, int mileage, Engine carEngine) {
this.name = name;
this.mileage = mileage;
setCarEngine(carEngine);
}
public void setCarEngine(Engine carEngine) {
this.carEngine = carEngine;
}
}
public class Engine {
public String type;
Engine(String type) {
this.type = type;
}
public void startEngine() {
System.out.println("Engine has started.");
}
public void stopEngine() {
System.out.println("Engine has stopped");
}
}
public class Main {
public static void main(String[] args) {
// Part 1. Implement Encapsulation.
// create object of Student
Student myStudent = new Student("Qadeer", 321);
// Test setter and getter methods
System.out.println(myStudent.getName());
myStudent.setName("Muhammad");
System.out.println(myStudent.getName());
System.out.println(myStudent.getRollNo());
myStudent.setRollNo(111);
System.out.println(myStudent.getRollNo());
// Part 2. Implement a Singleton class.
// Get object available.
SingleParent mySingleParent = SingleParent.getSingleParent();
mySingleParent.introduce();
// Create another object.
SingleParent secondSingleParent = SingleParent.getSingleParent();
// Determine if both objects are same.
System.out.println(mySingleParent == secondSingleParent);
// Displays object reference
System.out.println(mySingleParent);
System.out.println(secondSingleParent);
// Part 3. Section 1. Composition
// Create object consisting of Engine.
Engine engine = new Engine("car");
Car mclaren = new Car("mclaren", 321,engine);
// Part 3. Section 2. Aggregation
/* // Create object of Sphere
Sphere s = new Sphere(3);
double answer = s.surfaceArea();
System.out.println("The surface area is: " + answer);*/
}
}
public class SingleParent {
private static SingleParent instanceSingleParent = new SingleParent();
private SingleParent() {}
// getter
public static SingleParent getSingleParent() {
return instanceSingleParent;
}
// data method
public void introduce() {
System.out.println("I am a Singleton Class.");
}
}
public class Sphere {
// entity reference
CalculateArea cl;
double pi = 3.14;
int radius;
// constructor
Sphere(int radius) {
this.radius = radius;
}
double surfaceArea() {
cl = new CalculateArea();
int myCube = cl.cube(radius);
return 4.0 * pi * myCube;
}
}
// Part 1 of Assignment 1
public class Student {
// Declare private data members.
private String name;
private int rollNo;
// Create constructor
Student(String name, int rollNo) {
setName(name);
setRollNo(rollNo);
}
// Setter and Getters
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getRollNo() {
return rollNo;
}
public void setRollNo(int rollNo) {
this.rollNo = rollNo;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment