diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/BMW.java b/DataStructureAndAlgorithms/src/OOPs In Java/BMW.java new file mode 100644 index 0000000..64c37c5 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/BMW.java @@ -0,0 +1,8 @@ + + +public class BMW extends car { + + public String getCompany() { + return "BMW"; + } +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/car.java b/DataStructureAndAlgorithms/src/OOPs In Java/car.java new file mode 100644 index 0000000..7859f8a --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/car.java @@ -0,0 +1,32 @@ +// inheritance : inherited form vehicle class + + + +public abstract class car extends vehicle{ + int numGears; + boolean isConvertible; + + public car() { + super(100); + } + + public car(int numGears,int maxSpeed) { + super(maxSpeed); + this.numGears = numGears; + System.out.println("car"); + } + + public boolean isMoterized() { + return true; + } + + + public void print() { + //System.out.println("speed of car : " + maxSpeed); + super.print(); + System.out.println("num of Gears in car : " + numGears); + System.out.println("car's convertible feature : " + isConvertible); + + } + +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/car2.java b/DataStructureAndAlgorithms/src/OOPs In Java/car2.java new file mode 100644 index 0000000..174b5cd --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/car2.java @@ -0,0 +1,13 @@ + + +public class car2 implements vehicle2 { + private int speed; + + public int getSpeed() { + return speed; + } + + public void setSpeed(int speed) { + this.speed = speed; + } +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/carUse.java b/DataStructureAndAlgorithms/src/OOPs In Java/carUse.java new file mode 100644 index 0000000..353fb07 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/carUse.java @@ -0,0 +1,44 @@ + + +public class carUse { + + public static void main(String[] args) { + + vehicle v = new BMW(); + v.color = "red"; + //v.maxSpeed = 180; + v.setmaxSpeed(100); +// System.out.println(v.color); +// System.out.println(v.getmaxSpeed()); +// v.print(); + + + car c = new BMW(); +// c.print(); + + c.color = "black"; + //c.maxSpeed = 180; + c.setmaxSpeed(180); + c.numGears = 5; + c.isConvertible = true; + + System.out.println(c.color); + //System.out.println(c.maxSpeed); + System.out.println(c.getmaxSpeed()); + System.out.println(c.numGears); + System.out.println(c.isConvertible); + System.out.println(c.getCompany()); + + c.print(); + + vehicle v2 = new BMW(); + + v2.color = "red"; + //v2.numGears; //error + + vehicle2 v3 = new car2(); + v3.setSpeed(9384757); + System.out.println(v3.getSpeed()); + } + +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/fraction.java b/DataStructureAndAlgorithms/src/OOPs In Java/fraction.java new file mode 100644 index 0000000..d642856 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/fraction.java @@ -0,0 +1,75 @@ + + +public class fraction { + private int numerator; + private int denominator; + + public fraction(int numerator, int denominator) { + this.numerator = numerator; +// if(denominator == 0 ) +// // error out + this.denominator = denominator; + + simplify(); + } + + public void setNumerator(int numerator){ + this.numerator = numerator; + simplify(); + } + + public void setDenominator(int denominator) { +// if(denominator == 0) +// // error out + this.denominator = denominator; + simplify(); + } + + public int getNumerator() { + return numerator; + } + + public int getDenominator() { + return denominator; + } + + private void simplify() { + int gcd = 1; + + int smaller = Math.min(numerator, denominator); + for(int i=2; i<=smaller; i++) { + if((numerator%i == 0) && (denominator%i == 0)) + gcd = i; + } + numerator = numerator/gcd; + denominator = denominator/gcd ; + } + + public void print() { + simplify(); + if(denominator == 1) + System.out.println(numerator); + else + System.out.println(numerator + "/" + denominator); + } + + public void add(fraction f) { + this.numerator = this.numerator*f.denominator + this.denominator*f.numerator; + this.denominator = this.denominator*f.denominator; + simplify(); + } + + public void multiply(fraction f) { + this.numerator *= f.numerator; + this.denominator *= f.denominator; + simplify(); + } + + public static fraction add(fraction f1, fraction f2) { + int a = f1.numerator*f2.denominator + f1.denominator*f2.numerator; + int b = f1.denominator*f2.denominator; + fraction f = new fraction(a,b); + return f; + } + +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/fractionUse.java b/DataStructureAndAlgorithms/src/OOPs In Java/fractionUse.java new file mode 100644 index 0000000..2fee820 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/fractionUse.java @@ -0,0 +1,34 @@ + + + +public class fractionUse { + + public static void main(String[] args) { + fraction f1 = new fraction(50, 40); + fraction f2 = new fraction(30, 20); + fraction f3 = new fraction(8, 6); + f1.print(); + f2.print(); + f3.print(); + + System.out.println(f1.getNumerator()); + System.out.println(f1.getDenominator()); + + f2.setNumerator(1); + f2.setDenominator(2); + f2.print(); + + f1.add(f2); + + f1.print(); + + f2.multiply(f3); + f2.print(); + + f3 = fraction.add(f1,f2); + + f3.print(); + + } + +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/student.java b/DataStructureAndAlgorithms/src/OOPs In Java/student.java new file mode 100644 index 0000000..691f1ef --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/student.java @@ -0,0 +1,33 @@ + + +public class student { + public String name; + public int rollNo; + private int age; + private static int numStudent; // static member is same for all objects; + + public student() { // default constructor + numStudent++; + } + public student(String name, int rollNo, int age) { + this.name = name; + this.rollNo = rollNo; + this.age = age; + numStudent++; + } + + public void setAge(int age) { + if(age<16) // this is the actual use of set function + return; //that control of setting data is in your hand + + this.age = age; + } + + public int getAge() { + return this.age; + } + + public static int getNumStudent() { + return numStudent; + } +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/studentUse.java b/DataStructureAndAlgorithms/src/OOPs In Java/studentUse.java new file mode 100644 index 0000000..17e3712 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/studentUse.java @@ -0,0 +1,47 @@ + + +public class studentUse { + + public static void main(String[] args) { + student s1 = new student(); + student s2 = new student(); + + + s1.name = "Ajay"; + s1.rollNo = 15; + //s1.age = 23; note allowed + s1.setAge(12); // returns 0; + s1.setAge(23); + + + s2.name = "sachin"; + s2.rollNo = 131; + // s2.age = 21; not allowed + s2.setAge(21); + + System.out.println(s1.name); + System.out.println(s1.rollNo); + //System.out.println(s1.age); // not allowed + System.out.println(s1.getAge()); + + System.out.println(s2.name); + System.out.println(s2.rollNo); + //System.out.println(s2.age); // not allowed + System.out.println(s2.getAge()); + + + + // constructor use + + student s3 = new student("nayan", 190,21); + + System.out.println(s3.name); + System.out.println(s3.rollNo); + System.out.println(s3.getAge()); + + System.out.println(s1.getNumStudent() + " " + s2.getNumStudent() + " " + s3.getNumStudent() + " " + student.getNumStudent()); // all have same value; + + + } + +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/vehicle.java b/DataStructureAndAlgorithms/src/OOPs In Java/vehicle.java new file mode 100644 index 0000000..202e043 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/vehicle.java @@ -0,0 +1,28 @@ + + +public abstract class vehicle { + protected String color; + private int maxSpeed; + + public vehicle(int maxSpeed) { + this.maxSpeed = maxSpeed; + System.out.println("vehicle"); + } + + + public int getmaxSpeed() { + return maxSpeed; + } + public void setmaxSpeed(int maxSpeed) { + this.maxSpeed = maxSpeed; + } + + public abstract String getCompany(); + + public abstract boolean isMoterized(); + + public void print() { + System.out.println("color of vehicle : " + color); + System.out.println("speed of vehicle : " + maxSpeed); + } +} diff --git a/DataStructureAndAlgorithms/src/OOPs In Java/vehicle2.java b/DataStructureAndAlgorithms/src/OOPs In Java/vehicle2.java new file mode 100644 index 0000000..1a4f963 --- /dev/null +++ b/DataStructureAndAlgorithms/src/OOPs In Java/vehicle2.java @@ -0,0 +1,6 @@ + + +public interface vehicle2 { + public int getSpeed(); + public void setSpeed(int speed); +}