Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/encodings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions .idea/jarRepositories.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions .idea/lab-java-interfaces-and-abstract-classes.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions Lab/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>org.example</groupId>
<artifactId>Lab</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
<maven.compiler.source>25</maven.compiler.source>
<maven.compiler.target>25</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

</project>
54 changes: 54 additions & 0 deletions Lab/src/main/java/org/example/CarInventorySystem/Car.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package org.example.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 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;
}

public String getInfo() {
return "VIN number: "+getVinNumber()
+ "\nmake: " + getMake()
+ "\nmodel: " + getModel()
+ "\nmileage: " + getMileage();
}
}
8 changes: 8 additions & 0 deletions Lab/src/main/java/org/example/CarInventorySystem/Sedan.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package org.example.CarInventorySystem;

public class Sedan extends Car{

public Sedan(String vinNumber, String make, String model, int mileage) {
super(vinNumber, make, model, mileage);
}
}
22 changes: 22 additions & 0 deletions Lab/src/main/java/org/example/CarInventorySystem/Truck.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package org.example.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 String getInfo() {
return super.getInfo()+"\n towing capacity : "+towingCapacity;
}

public double getTowingCapacity() {
return towingCapacity;
}

public void setTowingCapacity(double towingCapacity) {
this.towingCapacity = towingCapacity;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package org.example.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;
}

@Override
public String getInfo() {
return super.getInfo()+"\n four wheel drive : "+(fourWheelDrive?"Yes":"No");
}

public boolean isFourWheelDrive() {
return fourWheelDrive;
}

public void setFourWheelDrive(boolean fourWheelDrive) {
this.fourWheelDrive = fourWheelDrive;
}
}
31 changes: 31 additions & 0 deletions Lab/src/main/java/org/example/IntListInterface/IntArrayList.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package org.example.IntListInterface;

import org.example.VideoStreamingService.Movie;

import java.util.Arrays;

public class IntArrayList implements IntList{
private int size=0;
private int maxSize=10;
private int[] numbers=new int[maxSize];
@Override
public void add(int number) {
if(size<maxSize){
numbers[size++]=number;
}else{
maxSize+= maxSize/2;
int[] newNumbers=new int[maxSize];
for(int i=0;i<numbers.length;i++) {
newNumbers[i] = numbers[i];
}
numbers=newNumbers;
System.out.println(maxSize);
}
}

@Override
public int get(int id) {
if(id>=0&&id<maxSize) return numbers[id];
return -1;
}
}
6 changes: 6 additions & 0 deletions Lab/src/main/java/org/example/IntListInterface/IntList.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package org.example.IntListInterface;

public interface IntList {
void add(int number);
int get(int id);
}
28 changes: 28 additions & 0 deletions Lab/src/main/java/org/example/IntListInterface/IntVector.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package org.example.IntListInterface;

import java.util.Arrays;

public class IntVector implements IntList{
private int size=0;
private int maxSize=10;
private int[] numbers=new int[maxSize];
@Override
public void add(int number) {
if(size<maxSize){
numbers[size++]=number;
}else{
maxSize*= 2;
int[] newNumbers=new int[maxSize];
for(int i=0;i<numbers.length;i++) {
newNumbers[i] = numbers[i];
}
numbers=newNumbers;
System.out.println(maxSize);
}
}

@Override
public int get(int id) {
return numbers[id];
}
}
24 changes: 24 additions & 0 deletions Lab/src/main/java/org/example/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package org.example;

import org.example.IntListInterface.IntArrayList;
import org.example.IntListInterface.IntList;
import org.example.IntListInterface.IntVector;

import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;

//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
static void main() {
System.out.println(roundToHundredth(BigDecimal.valueOf(4.25255)));
System.out.println(roundToTenth(BigDecimal.valueOf(4.25255)));
}
public static double roundToHundredth(BigDecimal number){
return number.setScale(2, RoundingMode.HALF_UP).doubleValue();
}
public static BigDecimal roundToTenth(BigDecimal number){
return number.setScale(1, RoundingMode.HALF_UP).negate();
}
}
22 changes: 22 additions & 0 deletions Lab/src/main/java/org/example/VideoStreamingService/Movie.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package org.example.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 String getInfo() {
return super.getInfo()+"\nRating: "+rating;
}

public double getRating() {
return rating;
}

public void setRating(double rating) {
this.rating = rating;
}
}
20 changes: 20 additions & 0 deletions Lab/src/main/java/org/example/VideoStreamingService/TvSeries.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package org.example.VideoStreamingService;

public class TvSeries extends Video{
private int episodes;
public TvSeries(String title, int duration, int episodes) {
super(title, duration);
this.episodes = episodes;
}
@Override
public String getInfo() {
return super.getInfo()+"\nEpisodes: "+episodes;
}
public int getEpisodes() {
return episodes;
}

public void setEpisodes(int episodes) {
this.episodes = episodes;
}
}
Loading