diff --git a/.project b/.project new file mode 100644 index 0000000..a628cce --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + uebungen + + + + + + + + diff --git a/solutions/.classpath b/solutions/.classpath new file mode 100644 index 0000000..7a69f73 --- /dev/null +++ b/solutions/.classpath @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/.gitignore b/solutions/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/solutions/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/solutions/.project b/solutions/.project new file mode 100644 index 0000000..ce0149b --- /dev/null +++ b/solutions/.project @@ -0,0 +1,23 @@ + + + solutions + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/solutions/.settings/org.eclipse.core.resources.prefs b/solutions/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..654c175 --- /dev/null +++ b/solutions/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding/=UTF-8 diff --git a/solutions/.settings/org.eclipse.jdt.core.prefs b/solutions/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..cd7ae0f --- /dev/null +++ b/solutions/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/solutions/bin/.gitignore b/solutions/bin/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/solutions/bin/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/solutions/bin/.project b/solutions/bin/.project new file mode 100644 index 0000000..ce0149b --- /dev/null +++ b/solutions/bin/.project @@ -0,0 +1,23 @@ + + + solutions + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/solutions/bin/.settings/org.eclipse.core.resources.prefs b/solutions/bin/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..4824b80 --- /dev/null +++ b/solutions/bin/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/solutions/bin/checkstyle.xml b/solutions/bin/checkstyle.xml new file mode 100644 index 0000000..2a9d4aa --- /dev/null +++ b/solutions/bin/checkstyle.xml @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/bin/pmd.xml b/solutions/bin/pmd.xml new file mode 100644 index 0000000..97e1b5f --- /dev/null +++ b/solutions/bin/pmd.xml @@ -0,0 +1,2253 @@ + + + + + +Rules which enforce generally accepted best practices. + + + + + + +Instantiation by way of private constructors from outside the constructor's class often causes the +generation of an accessor. A factory method, or non-privatization of the constructor can eliminate this +situation. The generated class file is actually an interface. It gives the accessing class the ability +to invoke a new hidden package scope constructor that takes the interface as a supplementary parameter. +This turns a private constructor effectively into one with package scope, and is challenging to discern. + +_Note:_ This rule is only executed for Java 10 or lower. +Since Java 11, [JEP 181: Nest-Based Access Control](https://openjdk.org/jeps/181) has been implemented. This +means that in Java 11 and above accessor classes are not generated anymore. + + 3 + + + + + + + + + + Declaring a MessageDigest instance as a field make this instance directly available to multiple threads. + Such sharing of MessageDigest instances should be avoided if possible since it leads to wrong results + if the access is not synchronized correctly. + Just create a new instance and use it locally, where you need it. + Creating a new instance is easier than synchronizing access to a shared instance. + + 3 + + + + + + + + + + + + + + + +Reassigning exception variables caught in a catch statement should be avoided because of: + +1) If it is needed, multi catch can be easily added and code will still compile. + +2) Following the principle of least surprise we want to make sure that a variable caught in a catch statement +is always the one thrown in a try block. + + 3 + + + + + +Reassigning loop variables can lead to hard-to-find bugs. Prevent or limit how these variables can be changed. + +In foreach-loops, configured by the `foreachReassign` property: +- `deny`: Report any reassignment of the loop variable in the loop body. _This is the default._ +- `allow`: Don't check the loop variable. +- `firstOnly`: Report any reassignments of the loop variable, except as the first statement in the loop body. + _This is useful if some kind of normalization or clean-up of the value before using is permitted, but any other change of the variable is not._ + +In for-loops, configured by the `forReassign` property: +- `deny`: Report any reassignment of the control variable in the loop body. _This is the default._ +- `allow`: Don't check the control variable. +- `skip`: Report any reassignments of the control variable, except conditional increments/decrements (`++`, `--`, `+=`, `-=`). + _This prevents accidental reassignments or unconditional increments of the control variable._ + + 3 + + + + + + + + + + + +Reassigning values to incoming parameters of a method or constructor is not recommended, as this can +make the code more difficult to understand. The code is often read with the assumption that parameter values +don't change and an assignment violates therefore the principle of least astonishment. This is especially a +problem if the parameter is documented e.g. in the method's javadoc and the new content differs from the original +documented content. + +Use temporary local variables instead. This allows you to assign a new name, which makes the code better +understandable. + +Note that this rule considers both methods and constructors. If there are multiple assignments for a formal +parameter, then only the first assignment is reported. + + 2 + + + + + + + +StringBuffers/StringBuilders can grow considerably, and so may become a source of memory leaks +if held within objects with long lifetimes. + + 3 + + + + + + + + + + + + + + + +Application with hard-coded IP addresses can become impossible to deploy in some cases. +Externalizing IP adresses is preferable. + + 3 + + + + + + + +Always check the return values of navigation methods (next, previous, first, last) of a ResultSet. +If the value return is 'false', it should be handled properly. + + 3 + + + + + + + +Avoid constants in interfaces. Interfaces should define types, constants are implementation details +better placed in classes or enums. See Effective Java, item 19. + + 3 + + + + + + + + + + + + + + + + +By convention, the default label should be the last label in a switch statement. + + 3 + + + + + + + + + + + + + + + + Double brace initialisation is a pattern to initialise eg collections concisely. But it implicitly + generates a new .class file, and the object holds a strong reference to the enclosing object. For those + reasons, it is preferable to initialize the object normally, even though it's verbose. + + This rule counts any anonymous class which only has a single initializer as an instance of double-brace + initialization. There is currently no way to find out whether a method called in the initializer is not + accessible from outside the anonymous class, and those legit cases should be suppressed for the time being. + + 3 + + + + + + + + + (){{ + add("a"); + add("b"); + add("c"); +}}; + +// the better way is to not create an anonymous class: +List a = new ArrayList<>(); +a.add("a"); +a.add("b"); +a.add("c"); +return a; +]]> + + + + + +Reports loops that can be safely replaced with the foreach syntax. The rule considers loops over +lists, arrays and iterators. A loop is safe to replace if it only uses the index variable to +access an element of the list or array, only has one update statement, and loops through *every* +element of the list or array left to right. + + 3 + + l) { + for (int i = 0; i < l.size(); i++) { // pre Java 1.5 + System.out.println(l.get(i)); + } + + for (String s : l) { // post Java 1.5 + System.out.println(s); + } + } +} +]]> + + + + + +Whenever using a log level, one should check if the loglevel is actually enabled, or +otherwise skip the associate String creation and manipulation. + +An alternative to checking the log level are substituting parameters, formatters or lazy logging +with lambdas. The available alternatives depend on the actual logging framework. + + 2 + + calculateExpensiveLoggingText()); +]]> + + + + + +In JUnit 3, test suites are indicated by the suite() method. In JUnit 4, suites are indicated +through the @RunWith(Suite.class) annotation. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the tearDown method was used to clean up all data entities required in running tests. +JUnit 4 skips the tearDown method and executes all methods annotated with @After after running each test. +JUnit 5 introduced @AfterEach and @AfterAll annotations to execute methods after each test or after all tests in the class, respectively. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the setUp method was used to set up all data entities required in running tests. +JUnit 4 skips the setUp method and executes all methods annotated with @Before before all tests. +JUnit 5 introduced @BeforeEach and @BeforeAll annotations to execute methods before each test or before all tests in the class, respectively. + + 3 + + + + + + + + + + + + + + + +In JUnit 3, the framework executed all methods which started with the word test as a unit test. +In JUnit 4, only methods annotated with the @Test annotation are executed. +In JUnit 5, one of the following annotations should be used for tests: @Test, @RepeatedTest, @TestFactory, @TestTemplate or @ParameterizedTest. + + 3 + + + + + + + + + + + + + + + + + + + + +In JUnit4, use the @Test(expected) annotation to denote tests that should throw exceptions. + + 3 + + + + + + + + Position literals first in all String comparisons, if the second argument is null then NullPointerExceptions + can be avoided, they will just return false. Note that switching literal positions for compareTo and + compareToIgnoreCase may change the result, see examples. + + 3 + + 0); // should be: "bar".compareTo(x) < 0 + } + boolean bar(String x) { + return (x.compareToIgnoreCase("bar") > 0); // should be: "bar".compareToIgnoreCase(x) < 0 + } + boolean bar(String x) { + return x.contentEquals("bar"); // should be "bar".contentEquals(x) + } +} +]]> + + + + + +The use of implementation types (i.e., HashSet) as object references limits your ability to use alternate +implementations in the future as requirements change. Whenever available, referencing objects +by their interface types (i.e, Set) provides much more flexibility. + + 3 + + list = new ArrayList<>(); + + public HashSet getFoo() { + return new HashSet(); + } + + // preferred approach + private List list = new ArrayList<>(); + + public Set getFoo() { + return new HashSet(); + } +} +]]> + + + + + +Exposing internal arrays to the caller violates object encapsulation since elements can be +removed or replaced outside of the object that owns it. It is safer to return a copy of the array. + + 3 + + + + + + + + + Annotating overridden methods with @Override ensures at compile time that + the method really overrides one, which helps refactoring and clarifies intent. + + 3 + + + + + + + +Java allows the use of several variables declaration of the same type on one line. However, it +can lead to quite messy code. This rule looks for several declarations on the same line. + + 4 + + + + + 1] + [$strictMode or count(distinct-values(VariableDeclarator/@BeginLine)) != count(VariableDeclarator)] +| +//FieldDeclaration + [count(VariableDeclarator) > 1] + [$strictMode or count(distinct-values(VariableDeclarator/@BeginLine)) != count(VariableDeclarator)] +]]> + + + + + + + + + + + + +Position literals first in comparisons, if the second argument is null then NullPointerExceptions +can be avoided, they will just return false. + +This rule is replaced by the more general rule {% rule "LiteralsFirstInComparisons" %}. + + 3 + + + + + + + +Position literals first in comparisons, if the second argument is null then NullPointerExceptions +can be avoided, they will just return false. + +This rule is replaced by the more general rule {% rule "LiteralsFirstInComparisons" %}. + + 3 + + + + + + + + Reports usages of primitive wrapper constructors. They are deprecated + since Java 9 and should not be used. Even before Java 9, they can + be replaced with usage of the corresponding static `valueOf` factory method + (which may be automatically inserted by the compiler since Java 1.5). + This has the advantage that it may reuse common instances instead of creating + a new instance each time. + + Note that for `Boolean`, the named constants `Boolean.TRUE` and `Boolean.FALSE` + are preferred instead of `Boolean.valueOf`. + + 3 + + + + + + + + +Consider replacing Enumeration usages with the newer java.util.Iterator + + 3 + + + + + + + + + + + + + + + +Consider replacing Hashtable usage with the newer java.util.Map if thread safety is not required. + + 3 + + + + //Type/ReferenceType/ClassOrInterfaceType[@Image='Hashtable'] + + + + + + + + + +Consider replacing Vector usages with the newer java.util.ArrayList if expensive thread-safe operations are not required. + + 3 + + + + //Type/ReferenceType/ClassOrInterfaceType[@Image='Vector'] + + + + + + + + + + + Switch statements should be exhaustive, to make their control flow + easier to follow. This can be achieved by adding a `default` case, or, + if the switch is on an enum type, by ensuring there is one switch branch + for each enum constant. + + 3 + + + + + + + + + + + + + + + Reports assignments to variables that are never used before the variable is overwritten, + or goes out of scope. Unused assignments are those for which + 1. The variable is never read after the assignment, or + 2. The assigned value is always overwritten by other assignments before the next read of + the variable. + + The rule doesn't consider assignments to fields except for those of `this` in a constructor, + or static fields of the current class in static initializers. + + The rule may be suppressed with the standard `@SuppressWarnings("unused")` tag. + + The rule subsumes {% rule "UnusedLocalVariable" %}, and {% rule "UnusedFormalParameter" %}. + Those violations are filtered + out by default, in case you already have enabled those rules, but may be enabled with the property + `reportUnusedVariables`. Variables whose name starts with `ignored` or `unused` are filtered out, as + is standard practice for exceptions. + + Limitations: + * The rule currently cannot know which method calls throw exceptions, or which exceptions they throw. + In the body of a try block, every method or constructor call is assumed to throw. This may cause false-negatives. + The only other language construct that is assumed to throw is the `throw` statement, in particular, + things like `assert` statements, or NullPointerExceptions on dereference are ignored. + * The rule cannot resolve assignments across constructors, when they're called with the special + `this(...)` syntax. This may cause false-negatives. + + Both of those limitations may be partly relaxed in PMD 7. + + 3 + + + + + + + + + + + + + + + + +Reports parameters of methods and constructors that are not referenced them in the method body. +Parameters whose name starts with `ignored` or `unused` are filtered out. + +Removing unused formal parameters from public methods could cause a ripple effect through the code base. +Hence, by default, this rule only considers private methods. To include non-private methods, set the +`checkAll` property to `true`. + + + 3 + + + + + + + +Reports import statements that are not used within the file. This also reports +duplicate imports, and imports from the same package. The simplest fix is just +to delete those imports. + +This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %} +from category codestyle instead. + + 4 + + + + + + + +Detects when a local variable is declared and/or assigned, but not used. +Variables whose name starts with `ignored` or `unused` are filtered out. + + 3 + + + + + + + +Detects when a private field is declared and/or assigned a value, but not used. + +Since PMD 6.50.0 private fields are ignored, if the fields are annotated with any annotation or the +enclosing class has any annotation. Annotations often enable a framework (such as dependency injection, mocking +or e.g. Lombok) which use the fields by reflection or other means. This usage can't be detected by static code analysis. +Previously these frameworks where explicitly allowed by listing their annotations in the property +"ignoredAnnotations", but that turned out to be prone of false positive for any not explicitly considered framework. + + 3 + + + + + + + +Unused Private Method detects when a private method is declared but is unused. + + 3 + + + + + + + +This rule detects JUnit assertions in object references equality. These assertions should be made by +more specific methods, like assertNull, assertNotNull. + +Deprecated since PMD 6.37.0, use {% rule SimplifiableTestAssertion %} instead. + + 3 + + + + + + + + + + + + + + + +When asserting a value is the same as a literal or Boxed boolean, use assertTrue/assertFalse, instead of assertEquals. + +Deprecated since PMD 6.37.0, use {% rule SimplifiableTestAssertion %} instead. + + 3 + + + + + + + + + + + + + + + +The isEmpty() method on java.util.Collection is provided to determine if a collection has any elements. +Comparing the value of size() to 0 does not convey intent as well as the isEmpty() method. + + 3 + + + + + + + +Starting with Java 7, StandardCharsets provides constants for common Charset objects, such as UTF-8. +Using the constants is less error prone, and can provide a small performance advantage compared to `Charset.forName(...)` +since no scan across the internal `Charset` caches is needed. + + 3 + + + + + + + + + + + + + + + + + +`do {} while (true);` requires reading the end of the statement before it is +apparent that it loops forever, whereas `while (true) {}` is easier to understand. + +`do {} while (false);` is redundant, and if an inner variable scope is required, +a block `{}` is sufficient. + +`while (false) {}` will never execute the block and can be removed in its entirety. + + 3 + + + += 1]] +| +(: while loops with conditional and'ed boolean literals, maybe parenthesized :) +//WhileStatement[Expression/(AndExpression|ConditionalAndExpression|(PrimaryExpression/PrimaryPrefix/Expression/(AndExpression|ConditionalAndExpression))) + (: at least one false literal :) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = false()]) >= 1]] +| +(: do-while loops with conditional or'ed boolean literals, maybe parenthesized :) +//DoStatement[Expression/(InclusiveOrExpression|ConditionalOrExpression|(PrimaryExpression/PrimaryPrefix/Expression/(InclusiveOrExpression|ConditionalOrExpression))) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral) = 2]] +| +(: do-while loops with conditional and'ed boolean literals, maybe parenthesized :) +//DoStatement[Expression/(AndExpression|ConditionalAndExpression|(PrimaryExpression/PrimaryPrefix/Expression/(AndExpression|ConditionalAndExpression))) + (: at least one false literal :) + [count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = false()]) >= 1 + (: or two true literals (e.g. true & true) :) + or count(PrimaryExpression/PrimaryPrefix/Literal/BooleanLiteral[@True = true()]) = 2]] +]]> + + + + + + + + + + diff --git a/solutions/bin/pom.xml b/solutions/bin/pom.xml new file mode 100644 index 0000000..7d56871 --- /dev/null +++ b/solutions/bin/pom.xml @@ -0,0 +1,132 @@ + + 4.0.0 + de.hs_mannheim.pr2 + solutions + 1.0-SNAPSHOT + jar + + PR2 Excercises + + + UTF-8 + 17 + 17 + 5.9.1 + 1.9.1 + + + + jitpack.io + https://jitpack.io + + + + install + ${basedir}/target + ${project.artifactId}-${project.version} + + + maven-compiler-plugin + 3.10.1 + + + maven-surefire-plugin + 3.0.0-M7 + + + org.apache.maven.plugins + maven-checkstyle-plugin + 3.2.0 + + + com.puppycrawl.tools + checkstyle + 10.4 + + + + checkstyle.xml + true + true + false + + + + validate + validate + + check + + + + + + org.apache.maven.plugins + maven-pmd-plugin + 3.19.0 + + + ./pmd.xml + + true + true + + + + + check + + + + + + + + + + com.github.thomsmits + game-framework + v1.0 + + + org.junit.jupiter + junit-jupiter-engine + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-api + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-params + ${junit.jupiter.version} + + + org.junit.platform + junit-platform-suite + ${junit.platform.version} + + + org.junit.vintage + junit-vintage-engine + 4.12.0-M4 + + + org.jfree + jfreechart + 1.5.3 + + + + diff --git a/solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class b/solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class new file mode 100644 index 0000000..e319036 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/grossmacher/Grossmacher.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class b/solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class new file mode 100644 index 0000000..759ec97 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/password/PasswortChecker.class b/solutions/bin/src/main/java/pr2/auffrischung/password/PasswortChecker.class new file mode 100644 index 0000000..0e6070c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/password/PasswortChecker.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class b/solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class new file mode 100644 index 0000000..74d0a55 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/printf/DoubleFormatter.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class b/solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class new file mode 100644 index 0000000..0f21658 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/quine/Quine.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class b/solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class new file mode 100644 index 0000000..e58a6d6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/suchemax/GroessteZahl.class differ diff --git a/solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class b/solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class new file mode 100644 index 0000000..2056d27 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/auffrischung/taschenrechner/Taschenrechner.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/iterator/SimpleStack.class b/solutions/bin/src/main/java/pr2/collections/iterator/SimpleStack.class new file mode 100644 index 0000000..6716900 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/iterator/SimpleStack.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class b/solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class new file mode 100644 index 0000000..b7a9712 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/iterator/test/SimpleStackTest.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class b/solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class new file mode 100644 index 0000000..c87ef77 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/iterieren/CoinGenerator.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class b/solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class new file mode 100644 index 0000000..29dc852 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/iterieren/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class b/solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class new file mode 100644 index 0000000..3145109 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/iterieren/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/list/WordCollector.class b/solutions/bin/src/main/java/pr2/collections/list/WordCollector.class new file mode 100644 index 0000000..69eb967 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/list/WordCollector.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$Item.class b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$Item.class new file mode 100644 index 0000000..3ad4a3f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$Item.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$ListenIterator.class b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$ListenIterator.class new file mode 100644 index 0000000..9fe015d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste$ListenIterator.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste.class b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste.class new file mode 100644 index 0000000..22ca1dd Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/list_iterator/Liste.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/map/WordCount.class b/solutions/bin/src/main/java/pr2/collections/map/WordCount.class new file mode 100644 index 0000000..5ffbd3e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/map/WordCount.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class b/solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class new file mode 100644 index 0000000..3853eb2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/map/WordFrequency.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/reverser/Reverser.class b/solutions/bin/src/main/java/pr2/collections/reverser/Reverser.class new file mode 100644 index 0000000..4e6a978 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/reverser/Reverser.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class b/solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class new file mode 100644 index 0000000..c766e11 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/reverser/test/ReverserTest.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/reverser_generic/Reverser.class b/solutions/bin/src/main/java/pr2/collections/reverser_generic/Reverser.class new file mode 100644 index 0000000..d02c514 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/reverser_generic/Reverser.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class b/solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class new file mode 100644 index 0000000..5ac6ba5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/reverser_generic/test/ReverserTest.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/set/WordCollector.class b/solutions/bin/src/main/java/pr2/collections/set/WordCollector.class new file mode 100644 index 0000000..f6d75e5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/set/WordCollector.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class b/solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class new file mode 100644 index 0000000..158d850 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/sorter_1/CommandLineSorter.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class b/solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class new file mode 100644 index 0000000..4593181 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/sorter_2/CommandLineSorter.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class new file mode 100644 index 0000000..d6e59f5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter$SortOrder.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class new file mode 100644 index 0000000..2e78bad Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/sortieren/Sorter.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/sortieren/test/SorterTest.class b/solutions/bin/src/main/java/pr2/collections/sortieren/test/SorterTest.class new file mode 100644 index 0000000..6ffa31e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/sortieren/test/SorterTest.class differ diff --git a/solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class b/solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class new file mode 100644 index 0000000..f2aede2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/collections/woerterbuch/Woerterbuch.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/eigene/Wuerfel.class b/solutions/bin/src/main/java/pr2/enums/eigene/Wuerfel.class new file mode 100644 index 0000000..3ad6f5b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/eigene/Wuerfel.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/eigene/WuerfelTyp.class b/solutions/bin/src/main/java/pr2/enums/eigene/WuerfelTyp.class new file mode 100644 index 0000000..eee6adb Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/eigene/WuerfelTyp.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class b/solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class new file mode 100644 index 0000000..dd54deb Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/eigene/test/WuerfelTest.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class b/solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class new file mode 100644 index 0000000..0f385ac Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/filme/LieblingsFilme.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/filme/Main.class b/solutions/bin/src/main/java/pr2/enums/filme/Main.class new file mode 100644 index 0000000..f07d8a5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/filme/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/schnick/Move.class b/solutions/bin/src/main/java/pr2/enums/schnick/Move.class new file mode 100644 index 0000000..1d2f2dd Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/schnick/Move.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class b/solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class new file mode 100644 index 0000000..e98039c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/schnick/SchnickSchnackSchnuck.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/singleton/MyEnum.class b/solutions/bin/src/main/java/pr2/enums/singleton/MyEnum.class new file mode 100644 index 0000000..4299a67 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/singleton/MyEnum.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class b/solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class new file mode 100644 index 0000000..a5297bc Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/singleton/SingletonBeweis.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/verwenden/GameBoard.class b/solutions/bin/src/main/java/pr2/enums/verwenden/GameBoard.class new file mode 100644 index 0000000..f9e659f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/verwenden/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/verwenden/GameMain.class b/solutions/bin/src/main/java/pr2/enums/verwenden/GameMain.class new file mode 100644 index 0000000..4cfa5c1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/verwenden/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class b/solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class new file mode 100644 index 0000000..18dc7db Binary files /dev/null and b/solutions/bin/src/main/java/pr2/enums/verwenden/Professor.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/CrypterCaesar.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/CrypterCaesar.class new file mode 100644 index 0000000..b1acd56 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/CrypterCaesar.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalKeyException.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalKeyException.class new file mode 100644 index 0000000..6bc4b76 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalKeyException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class new file mode 100644 index 0000000..199cac0 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/IllegalMessageException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class new file mode 100644 index 0000000..f664493 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/ausnahmen_testen/test/CaesarTest.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class new file mode 100644 index 0000000..7565d1c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/Fuse.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/FuseTrippedException.class b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/FuseTrippedException.class new file mode 100644 index 0000000..d81d2be Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/FuseTrippedException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/IllegalCurrentException.class b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/IllegalCurrentException.class new file mode 100644 index 0000000..2730ac8 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/IllegalCurrentException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/test/FuseTest.class b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/test/FuseTest.class new file mode 100644 index 0000000..4240585 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/eigene_ausnahme/test/FuseTest.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/fakultaet/Fakultaet.class b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/Fakultaet.class new file mode 100644 index 0000000..ce95735 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/Fakultaet.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class new file mode 100644 index 0000000..62e45c7 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/FakultaetException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class new file mode 100644 index 0000000..508fb10 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/fakultaet/test/FakultaetTest.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/Buchstabenzaehler.class b/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/Buchstabenzaehler.class new file mode 100644 index 0000000..dda5aff Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/Buchstabenzaehler.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/StatistikException.class b/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/StatistikException.class new file mode 100644 index 0000000..2c53315 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/handle_or_declare/StatistikException.class differ diff --git a/solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class b/solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class new file mode 100644 index 0000000..4287eb2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/exceptions/try_catch/Zahlenraten.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/einfach/Liste.class b/solutions/bin/src/main/java/pr2/generics/einfach/Liste.class new file mode 100644 index 0000000..8d57363 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/einfach/Liste.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/einfach/ListeNode.class b/solutions/bin/src/main/java/pr2/generics/einfach/ListeNode.class new file mode 100644 index 0000000..86bbf63 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/einfach/ListeNode.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class b/solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class new file mode 100644 index 0000000..889e7a1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/einfach/test/ListeTest.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/number_pair/Main.class b/solutions/bin/src/main/java/pr2/generics/number_pair/Main.class new file mode 100644 index 0000000..3582495 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/number_pair/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/number_pair/NumberPair.class b/solutions/bin/src/main/java/pr2/generics/number_pair/NumberPair.class new file mode 100644 index 0000000..6564ba6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/number_pair/NumberPair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/number_pair/Pair.class b/solutions/bin/src/main/java/pr2/generics/number_pair/Pair.class new file mode 100644 index 0000000..33f83f3 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/number_pair/Pair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/pair/Main.class b/solutions/bin/src/main/java/pr2/generics/pair/Main.class new file mode 100644 index 0000000..75ccf23 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/pair/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/pair/Pair.class b/solutions/bin/src/main/java/pr2/generics/pair/Pair.class new file mode 100644 index 0000000..bd9a00e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/pair/Pair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/Main.class b/solutions/bin/src/main/java/pr2/generics/pairlist/Main.class new file mode 100644 index 0000000..a610e6a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/pairlist/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class b/solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class new file mode 100644 index 0000000..2663b84 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/pairlist/Pair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class b/solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class new file mode 100644 index 0000000..18c8ee5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/pairlist/PairList.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class b/solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class new file mode 100644 index 0000000..ae8bd1e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/printer/CollectionPrinter.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/printer/Main.class b/solutions/bin/src/main/java/pr2/generics/printer/Main.class new file mode 100644 index 0000000..e24cd98 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/printer/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/queue/Queue.class b/solutions/bin/src/main/java/pr2/generics/queue/Queue.class new file mode 100644 index 0000000..62a0f45 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/queue/Queue.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/same_pair/Main.class b/solutions/bin/src/main/java/pr2/generics/same_pair/Main.class new file mode 100644 index 0000000..33c677f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/same_pair/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/same_pair/Pair.class b/solutions/bin/src/main/java/pr2/generics/same_pair/Pair.class new file mode 100644 index 0000000..89fde19 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/same_pair/Pair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class b/solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class new file mode 100644 index 0000000..4b1cf63 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/same_pair/SamePair.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class b/solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class new file mode 100644 index 0000000..02e31c6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/super_extends/Liste.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/super_extends/ListeNode.class b/solutions/bin/src/main/java/pr2/generics/super_extends/ListeNode.class new file mode 100644 index 0000000..9087a8d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/super_extends/ListeNode.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/super_extends/test/ListeTest.class b/solutions/bin/src/main/java/pr2/generics/super_extends/test/ListeTest.class new file mode 100644 index 0000000..926adbe Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/super_extends/test/ListeTest.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class b/solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class new file mode 100644 index 0000000..158b544 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/verwenden/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/verwenden/GameMain.class b/solutions/bin/src/main/java/pr2/generics/verwenden/GameMain.class new file mode 100644 index 0000000..7ebe3e6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/verwenden/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/wildcards/ListHelper.class b/solutions/bin/src/main/java/pr2/generics/wildcards/ListHelper.class new file mode 100644 index 0000000..954f390 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/wildcards/ListHelper.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/wildcards/Main.class b/solutions/bin/src/main/java/pr2/generics/wildcards/Main.class new file mode 100644 index 0000000..38f6d5d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/wildcards/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class b/solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class new file mode 100644 index 0000000..d5dc03b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/generics/wildcards/SimpleList.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakt_form/Form.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakt_form/Form.class new file mode 100644 index 0000000..e75d68a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/abstrakt_form/Form.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class new file mode 100644 index 0000000..a73e13b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Dreieck.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Figur.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Figur.class new file mode 100644 index 0000000..477c9f6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Figur.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Geometer.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Geometer.class new file mode 100644 index 0000000..92ed1de Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Geometer.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Kreis.class b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Kreis.class new file mode 100644 index 0000000..0bbf0ec Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/abstrakte_klassen_s/Kreis.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/comparable_student/Student.class b/solutions/bin/src/main/java/pr2/interfaces/comparable_student/Student.class new file mode 100644 index 0000000..c4a2199 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/comparable_student/Student.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class new file mode 100644 index 0000000..a9319d2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/AnalogController.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/DigitalController.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/DigitalController.class new file mode 100644 index 0000000..f655614 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/api/DigitalController.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/AnalogControllerImpl.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/AnalogControllerImpl.class new file mode 100644 index 0000000..b378567 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/AnalogControllerImpl.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class new file mode 100644 index 0000000..9ef1bfb Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DigitalControllerImpl.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DualShock4.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DualShock4.class new file mode 100644 index 0000000..6fd97d2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/impl/DualShock4.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class new file mode 100644 index 0000000..7b7bea4 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/AnalogControllerTest.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DigitalControllerTest.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DigitalControllerTest.class new file mode 100644 index 0000000..b6cb900 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DigitalControllerTest.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class new file mode 100644 index 0000000..50bb48b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/interfaces_s/test/DualShock4Test.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/stack/Stack.class b/solutions/bin/src/main/java/pr2/interfaces/stack/Stack.class new file mode 100644 index 0000000..dda8144 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/stack/Stack.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/stack/StackImpl.class b/solutions/bin/src/main/java/pr2/interfaces/stack/StackImpl.class new file mode 100644 index 0000000..2e04de7 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/stack/StackImpl.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class b/solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class new file mode 100644 index 0000000..6a5ae6a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/stack/test/StackTest.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class new file mode 100644 index 0000000..1ae293c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Translator.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Uebersetzer.class b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Uebersetzer.class new file mode 100644 index 0000000..04ddfb6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/Uebersetzer.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschEnglisch.class b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschEnglisch.class new file mode 100644 index 0000000..689414d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschEnglisch.class differ diff --git a/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschSpanisch.class b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschSpanisch.class new file mode 100644 index 0000000..79c0ed1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/interfaces/uebersetzer/UebersetzerDeutschSpanisch.class differ diff --git a/solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class b/solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class new file mode 100644 index 0000000..e103e93 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/intro/coding_standard/CodingStandard.class differ diff --git a/solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class b/solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class new file mode 100644 index 0000000..24e1c27 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/intro/javadoc/Waehrung.class differ diff --git a/solutions/bin/src/main/java/pr2/intro/junit_faculty/Fakultaet.class b/solutions/bin/src/main/java/pr2/intro/junit_faculty/Fakultaet.class new file mode 100644 index 0000000..2750f89 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/intro/junit_faculty/Fakultaet.class differ diff --git a/solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class b/solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class new file mode 100644 index 0000000..cf69cd1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/intro/junit_faculty/test/FakultaetTest.class differ diff --git a/solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class b/solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class new file mode 100644 index 0000000..fd095c0 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/buffered_reader/LineNumberPrinter.class differ diff --git a/solutions/bin/src/main/java/pr2/io/data_output/Board$Tupel.class b/solutions/bin/src/main/java/pr2/io/data_output/Board$Tupel.class new file mode 100644 index 0000000..e9311d7 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/data_output/Board$Tupel.class differ diff --git a/solutions/bin/src/main/java/pr2/io/data_output/Board.class b/solutions/bin/src/main/java/pr2/io/data_output/Board.class new file mode 100644 index 0000000..2b1c3c2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/data_output/Board.class differ diff --git a/solutions/bin/src/main/java/pr2/io/data_output/Color.class b/solutions/bin/src/main/java/pr2/io/data_output/Color.class new file mode 100644 index 0000000..158cc7f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/data_output/Color.class differ diff --git a/solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class b/solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class new file mode 100644 index 0000000..3105a45 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/data_output/test/BoardTest.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateReader.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateReader.class new file mode 100644 index 0000000..30eeaa4 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateReader.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class new file mode 100644 index 0000000..3b20d61 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datainputoutput_1/DateWriter.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class new file mode 100644 index 0000000..07efd67 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateReader.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateWriter.class b/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateWriter.class new file mode 100644 index 0000000..5a9418f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datainputoutput_2/DateWriter.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class b/solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class new file mode 100644 index 0000000..d2ae834 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datei_lesen/ReadData.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class b/solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class new file mode 100644 index 0000000..4b1f4d9 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datei_schreiben/WriteData.class differ diff --git a/solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class b/solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class new file mode 100644 index 0000000..b778322 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/datei_schreiben/test/DataTest.class differ diff --git a/solutions/bin/src/main/java/pr2/io/file/FilesystemWalker.class b/solutions/bin/src/main/java/pr2/io/file/FilesystemWalker.class new file mode 100644 index 0000000..3b1fe3d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/file/FilesystemWalker.class differ diff --git a/solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class b/solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class new file mode 100644 index 0000000..cd97e3b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/filetest/FileInfo.class differ diff --git a/solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class b/solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class new file mode 100644 index 0000000..adb8919 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/filter/UCaseReader.class differ diff --git a/solutions/bin/src/main/java/pr2/io/filter/test/UCaseReaderTest.class b/solutions/bin/src/main/java/pr2/io/filter/test/UCaseReaderTest.class new file mode 100644 index 0000000..5a88478 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/filter/test/UCaseReaderTest.class differ diff --git a/solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class b/solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class new file mode 100644 index 0000000..fa2a47e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/konsole/ConsoleToFile.class differ diff --git a/solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class b/solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class new file mode 100644 index 0000000..8647b94 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/linecounter/LineCounter.class differ diff --git a/solutions/bin/src/main/java/pr2/io/random_access/FileSort.class b/solutions/bin/src/main/java/pr2/io/random_access/FileSort.class new file mode 100644 index 0000000..78b08a6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/random_access/FileSort.class differ diff --git a/solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class b/solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class new file mode 100644 index 0000000..6da9ce0 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/random_access/test/FileSortTest.class differ diff --git a/solutions/bin/src/main/java/pr2/io/reader_writer/ReadAndPrintFile.class b/solutions/bin/src/main/java/pr2/io/reader_writer/ReadAndPrintFile.class new file mode 100644 index 0000000..43d9648 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/reader_writer/ReadAndPrintFile.class differ diff --git a/solutions/bin/src/main/java/pr2/io/rot13/Rot13.class b/solutions/bin/src/main/java/pr2/io/rot13/Rot13.class new file mode 100644 index 0000000..7be6be3 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/rot13/Rot13.class differ diff --git a/solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class b/solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class new file mode 100644 index 0000000..3eedd2c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/rot13/Rot13Reader.class differ diff --git a/solutions/bin/src/main/java/pr2/io/scrambler/Scrambler.class b/solutions/bin/src/main/java/pr2/io/scrambler/Scrambler.class new file mode 100644 index 0000000..7d9a2fe Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/scrambler/Scrambler.class differ diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class new file mode 100644 index 0000000..188192f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/serialisierung/Board$Tupel.class differ diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Board.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Board.class new file mode 100644 index 0000000..89c3306 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/serialisierung/Board.class differ diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/Color.class b/solutions/bin/src/main/java/pr2/io/serialisierung/Color.class new file mode 100644 index 0000000..af692e7 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/serialisierung/Color.class differ diff --git a/solutions/bin/src/main/java/pr2/io/serialisierung/test/BoardTest.class b/solutions/bin/src/main/java/pr2/io/serialisierung/test/BoardTest.class new file mode 100644 index 0000000..30abb87 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/io/serialisierung/test/BoardTest.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class b/solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class new file mode 100644 index 0000000..cd69fcc Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/anonymous/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/anonymous/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/anonymous/GameBoard.class new file mode 100644 index 0000000..5be16b1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/anonymous/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class new file mode 100644 index 0000000..42bca73 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/anonymous/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class b/solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class new file mode 100644 index 0000000..5f88906 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/array_sorter/ReverseSort.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/Main.class b/solutions/bin/src/main/java/pr2/lambda/callback/Main.class new file mode 100644 index 0000000..c9296b8 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/callback/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class b/solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class new file mode 100644 index 0000000..2382297 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/callback/NumberSelector.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class b/solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class new file mode 100644 index 0000000..f93478f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/callback/Predicate.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class b/solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class new file mode 100644 index 0000000..0e87ee9 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/comparator/SortLambda.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/lambdas/Main.class b/solutions/bin/src/main/java/pr2/lambda/lambdas/Main.class new file mode 100644 index 0000000..e331d34 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/lambdas/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class b/solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class new file mode 100644 index 0000000..8a1fa4f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/lambdas/NumberSelector.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class b/solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class new file mode 100644 index 0000000..c6fbcab Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/lambdas/Predicate.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/local/Alien.class b/solutions/bin/src/main/java/pr2/lambda/local/Alien.class new file mode 100644 index 0000000..ebf42c5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/local/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class new file mode 100644 index 0000000..bed41a6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/local/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/local/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/local/GameMain.class new file mode 100644 index 0000000..c4721d3 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/local/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche$Position.class b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche$Position.class new file mode 100644 index 0000000..ceeb064 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche$Position.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche.class b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche.class new file mode 100644 index 0000000..4242caf Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/MatrixSuche.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class new file mode 100644 index 0000000..197e16b Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/matrixsuche/test/MatrixSucheTest.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class new file mode 100644 index 0000000..514fe2a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringFunction.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class new file mode 100644 index 0000000..9b3b9c3 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/StringTransmogrifier.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class new file mode 100644 index 0000000..8475037 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_1/test/StringTransmogrifierTest.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class new file mode 100644 index 0000000..dd70f1e Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringFunction.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class new file mode 100644 index 0000000..96dd285 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/StringTransmogrifier.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class new file mode 100644 index 0000000..f76b3b2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/mogrifier_2/test/StringTransmogrifierTest.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class new file mode 100644 index 0000000..3371cf3 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/nonstatic/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class new file mode 100644 index 0000000..c943403 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard$Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard.class new file mode 100644 index 0000000..82be78c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class new file mode 100644 index 0000000..333ed48 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/nonstatic/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class b/solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class new file mode 100644 index 0000000..a2260f6 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/static_member/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard$Alien.class b/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard$Alien.class new file mode 100644 index 0000000..25ccfef Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard$Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class b/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class new file mode 100644 index 0000000..4e2176c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/static_member/GameBoard.class differ diff --git a/solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class b/solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class new file mode 100644 index 0000000..d1de8a4 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/lambda/static_member/GameMain.class differ diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class b/solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class new file mode 100644 index 0000000..1ddbf6c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/clone_alien/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class b/solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class new file mode 100644 index 0000000..9e968e7 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/clone_alien/Raumanzug.class differ diff --git a/solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class b/solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class new file mode 100644 index 0000000..6111b6a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/clone_alien/test/AlienCloneTest.class differ diff --git a/solutions/bin/src/main/java/pr2/object/clone_person/Person.class b/solutions/bin/src/main/java/pr2/object/clone_person/Person.class new file mode 100644 index 0000000..29ed237 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/clone_person/Person.class differ diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class new file mode 100644 index 0000000..c7b4056 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Ork.class differ diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class new file mode 100644 index 0000000..dd4f103 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/equals_hashcode/Wesen.class differ diff --git a/solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class b/solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class new file mode 100644 index 0000000..eaa6f26 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/equals_hashcode/test/WesenTest.class differ diff --git a/solutions/bin/src/main/java/pr2/object/equals_person/Person.class b/solutions/bin/src/main/java/pr2/object/equals_person/Person.class new file mode 100644 index 0000000..ddf17ca Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/equals_person/Person.class differ diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Alien.class b/solutions/bin/src/main/java/pr2/object/tostring/Alien.class new file mode 100644 index 0000000..ed01b63 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/tostring/Alien.class differ diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class b/solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class new file mode 100644 index 0000000..594e6b4 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/tostring/Ausgabe.class differ diff --git a/solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class b/solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class new file mode 100644 index 0000000..d8b92ad Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/tostring/Raumanzug.class differ diff --git a/solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class b/solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class new file mode 100644 index 0000000..14de92f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/wrapper_boxsearch/BoxSearcher.class differ diff --git a/solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class b/solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class new file mode 100644 index 0000000..2ed0817 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/object/wrapper_umwandler/Umwandler.class differ diff --git a/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class b/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class new file mode 100644 index 0000000..5a43438 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/Rechner.class differ diff --git a/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/test/RechnerTest.class b/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/test/RechnerTest.class new file mode 100644 index 0000000..95055ec Binary files /dev/null and b/solutions/bin/src/main/java/pr2/strukturierung/information_hiding/test/RechnerTest.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/finals/A.class b/solutions/bin/src/main/java/pr2/vererbung/finals/A.class new file mode 100644 index 0000000..0068ef2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/finals/A.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/finals/B.class b/solutions/bin/src/main/java/pr2/vererbung/finals/B.class new file mode 100644 index 0000000..7037894 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/finals/B.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Figur.class new file mode 100644 index 0000000..a127b53 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Figur.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class new file mode 100644 index 0000000..6abfda9 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class new file mode 100644 index 0000000..92318d2 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie1/Rechteck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Figur.class new file mode 100644 index 0000000..f57debe Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Figur.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class new file mode 100644 index 0000000..2b75886 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class new file mode 100644 index 0000000..b5676f9 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie2/Rechteck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Dreieck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Dreieck.class new file mode 100644 index 0000000..a8e0910 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Dreieck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class new file mode 100644 index 0000000..3cf804d Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Figur.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class new file mode 100644 index 0000000..50f824c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Gerade.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Main.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Main.class new file mode 100644 index 0000000..64f2b0f Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class new file mode 100644 index 0000000..869caec Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Quadrat.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Rechteck.class new file mode 100644 index 0000000..1152618 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/geometrie3/Rechteck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class new file mode 100644 index 0000000..ee87e47 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class new file mode 100644 index 0000000..5cdde7a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Untoter.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class new file mode 100644 index 0000000..5a81823 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/Wesen.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.class b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.class new file mode 100644 index 0000000..c053066 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class new file mode 100644 index 0000000..fd79686 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Affe.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class new file mode 100644 index 0000000..528ae7a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Futterstelle.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Giraffe.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Giraffe.class new file mode 100644 index 0000000..4408380 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Giraffe.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class new file mode 100644 index 0000000..c670c72 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/Gorilla.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class new file mode 100644 index 0000000..25be0cb Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class new file mode 100644 index 0000000..09fa4b5 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/polymorphie/ZooTier.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class b/solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class new file mode 100644 index 0000000..7e22648 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/singleton_einfach/Singleton.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class b/solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class new file mode 100644 index 0000000..b95bec8 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/statics/Spiel.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class b/solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class new file mode 100644 index 0000000..13d1237 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/statics/Wuerfel.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/Summator.class b/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/Summator.class new file mode 100644 index 0000000..eb74554 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/Summator.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/test/SummatorTest.class b/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/test/SummatorTest.class new file mode 100644 index 0000000..74eb825 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberladen_summe/test/SummatorTest.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class new file mode 100644 index 0000000..9b57dd9 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Amoebe.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class new file mode 100644 index 0000000..330f8be Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Dackel.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class new file mode 100644 index 0000000..e47db8c Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Lebewesen.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Main.class b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Main.class new file mode 100644 index 0000000..53b203a Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/ueberschreiben_lebewesen/Main.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class b/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class new file mode 100644 index 0000000..59bb0ff Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/Summator.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/test/SummatorTest.class b/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/test/SummatorTest.class new file mode 100644 index 0000000..d7636af Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vararg_summe/test/SummatorTest.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Dreieck.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Dreieck.class new file mode 100644 index 0000000..1a3e181 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Dreieck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class new file mode 100644 index 0000000..2af3e13 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Figur.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class new file mode 100644 index 0000000..223efcb Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Gerade.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Quadrat.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Quadrat.class new file mode 100644 index 0000000..c604f28 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Quadrat.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class new file mode 100644 index 0000000..6200ed1 Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/Rechteck.class differ diff --git a/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class new file mode 100644 index 0000000..a4ee6de Binary files /dev/null and b/solutions/bin/src/main/java/pr2/vererbung/vererbung_geometrie/test/FigurenTest.class differ diff --git a/sources/.classpath b/sources/.classpath index 766838c..a807c94 100644 --- a/sources/.classpath +++ b/sources/.classpath @@ -1,12 +1,42 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sources/.gitignore b/sources/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/sources/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/sources/.project b/sources/.project new file mode 100644 index 0000000..8c865d2 --- /dev/null +++ b/sources/.project @@ -0,0 +1,23 @@ + + + sources + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/sources/.settings/org.eclipse.core.resources.prefs b/sources/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..cf6931b --- /dev/null +++ b/sources/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 +encoding/=UTF-8 diff --git a/sources/.settings/org.eclipse.jdt.core.prefs b/sources/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..cd7ae0f --- /dev/null +++ b/sources/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java b/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java index 31770ea..ef0cf08 100644 --- a/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java +++ b/sources/src/main/java/pr2/auffrischung/labeled_break/ArraySucher.java @@ -2,18 +2,49 @@ package pr2.auffrischung.labeled_break; public class ArraySucher { - /** - * Sucht das erste Element, dass nicht 0 ist. - * - * @param array das Array in dem gesucht werden soll - * @return {@code true}, wenn ein Element gefunden wird, - * andernfalls {@code false}. - */ - public boolean suche(int[][] array) { - boolean found = false; + public static void main(String[] args) { + int rows = 3; // Anzahl der Zeilen + int columns = 4; + int[][] array = new int[rows][columns]; // Erstelle das 2D-Array - // TODO: Methodenrumpf schreiben + // Fülle das Array mit Werten + array[0][0] = 0; + array[0][1] = 0; + array[0][2] = 3; + array[0][3] = 4; - return found; - } + array[1][0] = 5; + array[1][1] = 6; + array[1][2] = 7; + array[1][3] = 8; + + array[2][0] = 9; + array[2][1] = 10; + array[2][2] = 11; + array[2][3] = 12; + + System.out.println(suche(array)); + } + + /** + * Sucht das erste Element, dass nicht 0 ist. + * + * @param array das Array in dem gesucht werden soll + * @return {@code true}, wenn ein Element gefunden wird, andernfalls + * {@code false}. + */ + public static boolean suche(int[][] array) { + boolean found = false; + + for (int i = 0; i < array.length; i++) { + for (int j = 0; j < array[i].length; j++) { + if (array[i][j] != 0) { + System.out.println(array[i][j]); + return true; + } + } + } + + return found; + } } diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java b/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java index 2d651fd..ff7bad7 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/Nachtelf.java @@ -3,7 +3,7 @@ package pr2.vererbung.konstruktoren; /** * Nachtelf aus der Allianz. */ - public class Nachtelf { + public class Nachtelf extends Wesen { /** * Standardmäßige Stärke der Fähigkeit Naturwiderstand. @@ -15,7 +15,14 @@ package pr2.vererbung.konstruktoren; */ private int naturwiderstand; - // TODO: Konstruktoren implementieren + public Nachtelf(String name, int staerke) { + super(name); + this.naturwiderstand = staerke; + } + + public Nachtelf(String name) { + this(name, STANDARD_NATURWIDERSTAND); + } /** * Stärke des Naturwiderstandes. diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java b/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java index 214f654..1eda14b 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/Untoter.java @@ -3,7 +3,7 @@ package pr2.vererbung.konstruktoren; /** * Untoter aus der Horde. */ - public class Untoter { + public class Untoter extends Wesen { /** * Standardmäßige Stärke der Fähigkeit zur Unterwasseratmung. @@ -15,7 +15,14 @@ package pr2.vererbung.konstruktoren; */ private int unterwasseratmung; - // TODO: Konstruktoren implementieren + public Untoter(String name, int staerke) { + super(name); + this.unterwasseratmung = staerke; + } + + public Untoter(String name) { + this(name, STANDARD_UNTERWASSERATMUNG); + } /** * Fähigkeit zur Unterwasseratmnung. diff --git a/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java b/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java index 1732f9e..4ad3391 100644 --- a/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java +++ b/sources/src/main/java/pr2/vererbung/konstruktoren/test/WesenTest.java @@ -19,15 +19,15 @@ public class WesenTest { @Test void testNachtelf() { // TODO: Einkommentieren -// assertTrue(new Nachtelf("") instanceof Wesen, -// "Nachtelf erbt nicht " + "von Wesen"); -// -// assertEquals(Nachtelf.STANDARD_NATURWIDERSTAND, -// new Nachtelf("").getNaturwiderstand()); -// -// assertEquals(120, new Nachtelf("", 120).getNaturwiderstand()); -// -// assertEquals("Hugo", new Nachtelf("Hugo").getName()); + assertTrue(new Nachtelf("") instanceof Wesen, + "Nachtelf erbt nicht " + "von Wesen"); + + assertEquals(Nachtelf.STANDARD_NATURWIDERSTAND, + new Nachtelf("").getNaturwiderstand()); + + assertEquals(120, new Nachtelf("", 120).getNaturwiderstand()); + + assertEquals("Hugo", new Nachtelf("Hugo").getName()); } /** @@ -36,14 +36,14 @@ public class WesenTest { @Test void testUntoten() { // TODO: Einkommentieren -// assertTrue(new Untoter("") instanceof Wesen, -// "Untoter erbt nicht von " + "Wesen"); -// -// assertEquals(Untoter.STANDARD_UNTERWASSERATMUNG, -// new Untoter("").getUnterwasseratmung()); -// -// assertEquals(120, new Untoter("", 120).getUnterwasseratmung()); -// -// assertEquals("Hugo", new Untoter("Hugo").getName()); + assertTrue(new Untoter("") instanceof Wesen, + "Untoter erbt nicht von " + "Wesen"); + + assertEquals(Untoter.STANDARD_UNTERWASSERATMUNG, + new Untoter("").getUnterwasseratmung()); + + assertEquals(120, new Untoter("", 120).getUnterwasseratmung()); + + assertEquals("Hugo", new Untoter("Hugo").getName()); } } diff --git a/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java b/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java index c5cc781..841002d 100644 --- a/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java +++ b/sources/src/main/java/pr2/vererbung/polymorphie/Futterstelle.java @@ -11,8 +11,8 @@ public class Futterstelle { * * @param affe Affe, der gefüttert werden soll. */ - public void gibFutter(Affe affe) { - affe.fuettern(); + public void gibFutter(ZooTier tier) { + tier.fuettern(); } /** @@ -20,16 +20,16 @@ public class Futterstelle { * * @param gorilla Gorilla, der gefüttert werden soll. */ - public void gibFutter(Gorilla gorilla) { - gorilla.fuettern(); - } +// public void gibFutter(Gorilla gorilla) { +// gorilla.fuettern(); +// } /** * Füttert die Giraffe. * * @param giraffe Giraffe, die gefüttert werden soll. */ - public void gibFutter(Giraffe giraffe) { - giraffe.fuettern(); - } +// public void gibFutter(Giraffe giraffe) { +// giraffe.fuettern(); +// } } diff --git a/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java b/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java index 8e00527..67db68a 100644 --- a/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java +++ b/sources/src/main/java/pr2/vererbung/polymorphie/ZooSimulation.java @@ -5,37 +5,36 @@ package pr2.vererbung.polymorphie; */ public final class ZooSimulation { - /** - * Konstruktor. - */ - private ZooSimulation() { - // keine Objekte benötigt - } + /** + * Konstruktor. + */ + private ZooSimulation() { + // keine Objekte benötigt + } - /** - * Main-Methode. - * - * @param args Kommandozeilen-Argumente. - */ - public static void main(String[] args) { - Futterstelle futterstelle = new Futterstelle(); + /** + * Main-Methode. + * + * @param args Kommandozeilen-Argumente. + */ + public static void main(String[] args) { + Futterstelle futterstelle = new Futterstelle(); - Affe charlie = new Affe("Charlie"); - Gorilla buck = new Gorilla("Buck"); - Giraffe debbie = new Giraffe("Debbie"); + ZooTier[] zooArr = new ZooTier[] { new Affe("Charlie"), new Gorilla("Vicky"), new Giraffe("Tobi") }; - System.out.println(charlie); - System.out.println(buck); - System.out.println(debbie); + for (ZooTier tier : zooArr) { + System.out.println(tier); + } - System.out.println("Fütterung..."); + System.out.println("Fütterung..."); + + for (ZooTier tier : zooArr) { + futterstelle.gibFutter(tier); + } - futterstelle.gibFutter(charlie); - futterstelle.gibFutter(buck); - futterstelle.gibFutter(debbie); + for (ZooTier tier : zooArr) { + System.out.println(tier); + } - System.out.println(charlie); - System.out.println(buck); - System.out.println(debbie); - } + } } diff --git a/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java b/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java index 313fcc7..eda2217 100644 --- a/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java +++ b/sources/src/main/java/pr2/vererbung/singleton_einfach/Singleton.java @@ -1,5 +1,12 @@ package pr2.vererbung.singleton_einfach; public class Singleton { + private static Singleton instance = new Singleton(); + + private Singleton() {} + + public static Singleton getInstance() { + return instance; + } } diff --git a/sources/src/main/java/pr2/vererbung/statics/Spiel.java b/sources/src/main/java/pr2/vererbung/statics/Spiel.java index 3b76b5e..fc349b5 100644 --- a/sources/src/main/java/pr2/vererbung/statics/Spiel.java +++ b/sources/src/main/java/pr2/vererbung/statics/Spiel.java @@ -28,10 +28,9 @@ public final class Spiel { } // Statistik ausgeben - System.out.println("Statistik für Würfel 1"); - System.out.println(wuerfel1.statistik()); + System.out.println("Statistik für alle Würfel"); + System.out.println(Wuerfel.statistik()); System.out.println(); - System.out.println("Statistik für Würfel 2"); - System.out.println(wuerfel2.statistik()); + } } diff --git a/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java b/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java index 5c3fc2e..93a615a 100644 --- a/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java +++ b/sources/src/main/java/pr2/vererbung/statics/Wuerfel.java @@ -7,38 +7,42 @@ import java.util.Random; */ public class Wuerfel { - /** Häufigkeit der Werte. */ - private int[] haeufigkeit = new int[6]; + /** Häufigkeit der Werte. */ + private static final int[] HAEUFIGKEIT = new int[6]; - /** Zufallsgenerator. */ - private Random random = new Random(); + /** Anzahl der Würfe mit dem Würfel. */ + private static int wuerfe = 0; - /** - * Bestimmt den nächsten Wurf. - * - * @return der Wurf. - */ - public int wuerfele() { - int wert = random.nextInt(6); - haeufigkeit[wert]++; - return wert + 1; - } + /** Zufallsgenerator. */ + private final Random random = new Random(); - /** - * Gibt die Häufigkeit der Würfe zurück. - * - * @return die Statistik mit der Häufigkeit. - */ - public String statistik() { - StringBuilder result = new StringBuilder(); + /** + * Bestimmt den nächsten Wurf. + * + * @return der Wurf. + */ + public int wuerfele() { + int wert = random.nextInt(6); + HAEUFIGKEIT[wert]++; + wuerfe++; + return wert + 1; + } - for (int i = 0; i < haeufigkeit.length; i++) { - result.append(i + 1) - .append(": ") - .append(haeufigkeit[i]) - .append("\n"); - } + /** + * Gibt die Häufigkeit der Würfe zurück. + * + * @return die Statistik mit der Häufigkeit. + */ + public static String statistik() { + StringBuilder result = new StringBuilder(); - return result.toString(); - } + for (int i = 0; i < HAEUFIGKEIT.length; i++) { + result.append(i + 1).append(": ").append(String.format("%.2f %%", ((double) HAEUFIGKEIT[i] / wuerfe) * 100)) + .append("\n"); + } + + result.append("Summe: ").append(wuerfe).append("\n"); + + return result.toString(); + } }