From 085ebeb470e8147d7411816b45d0393a2d4ab88a Mon Sep 17 00:00:00 2001 From: 2wenty1ne Date: Wed, 9 Oct 2024 22:26:00 +0200 Subject: [PATCH] device transfer --- src/src/Sensor.java | 32 ++++++++++++++++++++++++++++++++ src/src/Thermometer.java | 21 +++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 src/src/Sensor.java create mode 100644 src/src/Thermometer.java diff --git a/src/src/Sensor.java b/src/src/Sensor.java new file mode 100644 index 0000000..bbc9862 --- /dev/null +++ b/src/src/Sensor.java @@ -0,0 +1,32 @@ +public class Sensor extends Thread { + private final long frequency; + + public Sensor(long frequency) { + this.frequency = frequency; + start(); + } + + public long getFrequency() { + return this.frequency; + } + + protected String reading() { + // eigentlich abstract + return null; + } + + @Override + public void run() { + while(true) { + System.out.println("reading: " + reading()); + try { + Thread.sleep(this.frequency); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + } + public static void main(String... args) { + var s = new Sensor(1000); + } +} diff --git a/src/src/Thermometer.java b/src/src/Thermometer.java new file mode 100644 index 0000000..45866c7 --- /dev/null +++ b/src/src/Thermometer.java @@ -0,0 +1,21 @@ +import javax.swing.plaf.TableHeaderUI; +import java.util.Random; + +public class Thermometer extends Sensor { + private final Random rand; + + public Thermometer(long frequency) { + super(frequency); + this.rand = new Random(); + } + + @Override + protected String reading() { + return String.format("(%04d freq.): %3d°C", getFrequency(), this.rand.nextInt(100)); + } + + public static void main(String[] args) { + var s1 = new Thermometer(1000); + var s2 = new Thermometer(3000); + } +}