From 8e7101ad5cd9fc38445d0d703a88a873ab09600a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Selim=20Helvac=C4=B1?= Date: Sat, 11 Apr 2026 14:39:51 +0200 Subject: [PATCH] lab completed 90% --- .idea/.gitignore | 10 ++++ ...b-java-interfaces-and-abstract-classes.iml | 9 ++++ .idea/misc.xml | 6 +++ .idea/modules.xml | 8 +++ .idea/vcs.xml | 6 +++ src/BigDecimalOperations.java | 32 ++++++++++++ src/CarInventorySystem/Car.java | 52 +++++++++++++++++++ src/CarInventorySystem/CarApplication.java | 15 ++++++ src/CarInventorySystem/Sedan.java | 12 +++++ src/CarInventorySystem/Truck.java | 24 +++++++++ src/CarInventorySystem/UtilityVehicle.java | 23 ++++++++ src/Interface/IntArrayList.java | 30 +++++++++++ src/Interface/IntList.java | 13 +++++ src/Interface/IntListApplication.java | 9 ++++ src/Interface/IntVector.java | 13 +++++ src/VideoStreamingService/Movie.java | 24 +++++++++ .../StreamingApplication.java | 12 +++++ src/VideoStreamingService/TvSeries.java | 25 +++++++++ src/VideoStreamingService/Video.java | 31 +++++++++++ 19 files changed, 354 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/lab-java-interfaces-and-abstract-classes.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 src/BigDecimalOperations.java create mode 100644 src/CarInventorySystem/Car.java create mode 100644 src/CarInventorySystem/CarApplication.java create mode 100644 src/CarInventorySystem/Sedan.java create mode 100644 src/CarInventorySystem/Truck.java create mode 100644 src/CarInventorySystem/UtilityVehicle.java create mode 100644 src/Interface/IntArrayList.java create mode 100644 src/Interface/IntList.java create mode 100644 src/Interface/IntListApplication.java create mode 100644 src/Interface/IntVector.java create mode 100644 src/VideoStreamingService/Movie.java create mode 100644 src/VideoStreamingService/StreamingApplication.java create mode 100644 src/VideoStreamingService/TvSeries.java create mode 100644 src/VideoStreamingService/Video.java diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..ab1f416 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Ignored default folder with query files +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/lab-java-interfaces-and-abstract-classes.iml b/.idea/lab-java-interfaces-and-abstract-classes.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/lab-java-interfaces-and-abstract-classes.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..4eb4f51 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..ff55171 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/BigDecimalOperations.java b/src/BigDecimalOperations.java new file mode 100644 index 0000000..3243b11 --- /dev/null +++ b/src/BigDecimalOperations.java @@ -0,0 +1,32 @@ +import java.math.BigDecimal; +import java.math.RoundingMode; + +public class BigDecimalOperations { + static void main(String[] args){ + + BigDecimal a = new BigDecimal("4.2545"); + double result = toRoundedDouble(a); + + System.out.println(result); + + BigDecimal b = new BigDecimal("1.2345"); + BigDecimal bMinus = reverseSign(b); + + System.out.println(bMinus); + + BigDecimal c = new BigDecimal("-45.67"); + BigDecimal cMinus = reverseSign(c); + + System.out.println(cMinus); + } + + private static double toRoundedDouble(BigDecimal a) { + return a.setScale(2, RoundingMode.HALF_UP).doubleValue(); + } + + private static BigDecimal reverseSign(BigDecimal b ){ + return b.setScale(1, RoundingMode.HALF_UP).negate(); + } + + +} diff --git a/src/CarInventorySystem/Car.java b/src/CarInventorySystem/Car.java new file mode 100644 index 0000000..ecc3710 --- /dev/null +++ b/src/CarInventorySystem/Car.java @@ -0,0 +1,52 @@ +package CarInventorySystem; + +public abstract class Car { + private String vinNumber; + private String make; + private String model; + private int mileage; + + + public Car(String vinNumber, String make, String model, int mileage) { + this.vinNumber = vinNumber; + this.make = make; + this.model = model; + this.mileage = mileage; + } + + public void getInfo(){ + System.out.println("The vehicle is a " + make + " " + model + " with VIN number: " + vinNumber + " and at " + mileage + "km."); + } + + public String getVinNumber() { + return vinNumber; + } + + public void setVinNumber(String vinNumber) { + this.vinNumber = vinNumber; + } + + public String getMake() { + return make; + } + + public void setMake(String make) { + this.make = make; + } + + public String getModel() { + return model; + } + + public void setModel(String model) { + this.model = model; + } + + public int getMileage() { + return mileage; + } + + public void setMileage(int mileage) { + this.mileage = mileage; + } +} diff --git a/src/CarInventorySystem/CarApplication.java b/src/CarInventorySystem/CarApplication.java new file mode 100644 index 0000000..6a8530f --- /dev/null +++ b/src/CarInventorySystem/CarApplication.java @@ -0,0 +1,15 @@ +package CarInventorySystem; + +public class CarApplication { + public static void main(String[] args){ + + Car sedan = new Sedan ("WZZZADG30986DC45H", "Honda", "Civic", 150000); + Car truck = new Truck ("1FTFWET4EFA88453", "Ford", "F-150", 289648, 14000); + Car utility = new UtilityVehicle("J3T1AC12R8M1003HM76", "Toyota", "Rav4", 35699, true); + + + sedan.getInfo(); + truck.getInfo(); + utility.getInfo(); + } +} diff --git a/src/CarInventorySystem/Sedan.java b/src/CarInventorySystem/Sedan.java new file mode 100644 index 0000000..10d600b --- /dev/null +++ b/src/CarInventorySystem/Sedan.java @@ -0,0 +1,12 @@ +package CarInventorySystem; + +public class Sedan extends Car { + + + public Sedan(String vinNumber, String make, String model, int mileage) { + super(vinNumber, make, model, mileage); + } + + + +} diff --git a/src/CarInventorySystem/Truck.java b/src/CarInventorySystem/Truck.java new file mode 100644 index 0000000..ba97530 --- /dev/null +++ b/src/CarInventorySystem/Truck.java @@ -0,0 +1,24 @@ +package CarInventorySystem; + +public class Truck extends Car{ + private double towingCapacity; + + public Truck(String vinNumber, String make, String model, int mileage, double towingCapacity) { + super(vinNumber, make, model, mileage); + this.towingCapacity = towingCapacity; + } + + @Override + public void getInfo(){ + System.out.println("The vehicle is a " + getMake() + " " + getModel() + " with VIN number: " + getVinNumber() + " at " + getMileage() + "km " + "and with a towning capacity of " + towingCapacity); + } + + + public double getTowingCapacity() { + return towingCapacity; + } + + public void setTowingCapacity(double towingCapacity) { + this.towingCapacity = towingCapacity; + } +} diff --git a/src/CarInventorySystem/UtilityVehicle.java b/src/CarInventorySystem/UtilityVehicle.java new file mode 100644 index 0000000..c88e361 --- /dev/null +++ b/src/CarInventorySystem/UtilityVehicle.java @@ -0,0 +1,23 @@ +package CarInventorySystem; + +public class UtilityVehicle extends Car { + private boolean fourWheelDrive; + + public UtilityVehicle(String vinNumber, String make, String model, int mileage, boolean fourWheelDrive) { + super(vinNumber, make, model, mileage); + this.fourWheelDrive = fourWheelDrive; + } + + + public void getInfo() { + System.out.println("The vehicle is a " + getMake() + " " + getModel() + " with VIN number: " + getVinNumber() + " at " + getMileage() + "km " + "and has four wheel drive " + fourWheelDrive); + } + + boolean isFourWheelDrive () { + return fourWheelDrive; + } + + public void setFourWheelDrive ( boolean fourWheelDrive){ + this.fourWheelDrive = fourWheelDrive; + } +} \ No newline at end of file diff --git a/src/Interface/IntArrayList.java b/src/Interface/IntArrayList.java new file mode 100644 index 0000000..4372d35 --- /dev/null +++ b/src/Interface/IntArrayList.java @@ -0,0 +1,30 @@ +package Interface; + +import java.sql.Array; + +public class IntArrayList implements IntList { + + + + + public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length){ + int[] sourceArray = new int[] {1,2,3,4,5,6,7,8,9,10}; + int[] destinationArray = new int[10]; + System.arraycopy(sourceArray, 0, destinationArray, 4, sourceArray.length); + + System.out.println(Array.toString(destinationArray)); + } + + + + + @Override + public int add(int number) { + return 0; + } + + @Override + public int get(int id) { + return 0; + } +} diff --git a/src/Interface/IntList.java b/src/Interface/IntList.java new file mode 100644 index 0000000..a2bd28a --- /dev/null +++ b/src/Interface/IntList.java @@ -0,0 +1,13 @@ +package Interface; + +public interface IntList { + + default int add(int number){ + } + + + + + default int get(int id){ + } +} diff --git a/src/Interface/IntListApplication.java b/src/Interface/IntListApplication.java new file mode 100644 index 0000000..a00c340 --- /dev/null +++ b/src/Interface/IntListApplication.java @@ -0,0 +1,9 @@ +package Interface; + +public class IntListApplication { + static void main (String[] args){ + + + + } +} diff --git a/src/Interface/IntVector.java b/src/Interface/IntVector.java new file mode 100644 index 0000000..4829e69 --- /dev/null +++ b/src/Interface/IntVector.java @@ -0,0 +1,13 @@ +package Interface; + +public class IntVector implements IntList{ + @Override + public int add(int number) { + return 0; + } + + @Override + public int get(int id) { + return 0; + } +} diff --git a/src/VideoStreamingService/Movie.java b/src/VideoStreamingService/Movie.java new file mode 100644 index 0000000..1f1afb3 --- /dev/null +++ b/src/VideoStreamingService/Movie.java @@ -0,0 +1,24 @@ +package VideoStreamingService; + +public class Movie extends Video { + private double rating; + + + public Movie(String title, int duration, double rating) { + super(title, duration); + this.rating = rating; + } + + @Override + public void getInfo() { + System.out.println(getTitle() + " has a rating of " + rating + " over 10"); + } + + public double getRating() { + return rating; + } + + public void setRating(double rating) { + this.rating = rating; + } +} diff --git a/src/VideoStreamingService/StreamingApplication.java b/src/VideoStreamingService/StreamingApplication.java new file mode 100644 index 0000000..339c2ab --- /dev/null +++ b/src/VideoStreamingService/StreamingApplication.java @@ -0,0 +1,12 @@ +package VideoStreamingService; + +public class StreamingApplication { + public static void main(String[] args) { + Video tvSerie = new TvSeries("Doctor Who", 1, 30); + Video movie = new Movie("Lord Of The Rings", 5, 8.5); + + tvSerie.getInfo(); + movie.getInfo(); + + } +} diff --git a/src/VideoStreamingService/TvSeries.java b/src/VideoStreamingService/TvSeries.java new file mode 100644 index 0000000..f4a9b23 --- /dev/null +++ b/src/VideoStreamingService/TvSeries.java @@ -0,0 +1,25 @@ +package VideoStreamingService; + +public class TvSeries extends Video { + private int episode; + + + public TvSeries(String title, int duration, int episode) { + super(title, duration); + this.episode = episode; + } + + + @Override + public void getInfo() { + System.out.println(getTitle() + " has " + episode + " episodes"); + } + + public int getEpisode() { + return episode; + } + + public void setEpisode(int episode) { + this.episode = episode; + } +} diff --git a/src/VideoStreamingService/Video.java b/src/VideoStreamingService/Video.java new file mode 100644 index 0000000..3e22e68 --- /dev/null +++ b/src/VideoStreamingService/Video.java @@ -0,0 +1,31 @@ +package VideoStreamingService; + +public abstract class Video { + private String title; + private int duration; + + public Video(String title, int duration) { + this.title = title; + this.duration = duration; + } + + public void getInfo(){ + System.out.println(title + " has a duration of " + duration + "h"); + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public int getDuration() { + return duration; + } + + public void setDuration(int duration) { + this.duration = duration; + } +}