Merge remote-tracking branch 'origin/master'

This commit is contained in:
Sebastian Eidecker
2019-11-28 16:13:47 +01:00
11 changed files with 194 additions and 2 deletions

View File

@@ -49,7 +49,13 @@ public class CastExceptions {
class OberCast { class OberCast {
public void method() throws IOException{ public void method() throws IOException{
Integer i;
long l2 = (int)12;
int i2 = 2;
i = (int)i2;
} }
} }

View File

@@ -1,5 +1,7 @@
package org.eidecker.oca8lernen.general; package org.eidecker.oca8lernen.general;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
public class InterfaceWithFields implements T1, T2 { public class InterfaceWithFields implements T1, T2 {
@@ -18,6 +20,8 @@ public class InterfaceWithFields implements T1, T2 {
interface T1 { interface T1 {
int VALUE = 99; int VALUE = 99;
int VALUE_T1 = 1; int VALUE_T1 = 1;
default int getValue() {return VALUE;}
} }
interface T2 { interface T2 {
@@ -31,11 +35,15 @@ interface T2 {
class Tester { class Tester {
@Test
public void interfaceTest() { public void interfaceTest() {
InterfaceWithFields interfaceWithFields = new InterfaceWithFields(); InterfaceWithFields interfaceWithFields = new InterfaceWithFields();
assertEquals(99, ((T1)interfaceWithFields).VALUE); assertEquals(99, ((T1)interfaceWithFields).VALUE);
assertEquals(98, ((T2)interfaceWithFields).VALUE); assertEquals(98, ((T2)interfaceWithFields).VALUE);
T1 t1 = new InterfaceWithFields();
System.out.println(t1.getValue());
assertEquals(1, interfaceWithFields.VALUE_T1); assertEquals(1, interfaceWithFields.VALUE_T1);
assertEquals(2, interfaceWithFields.VALUE_T2); assertEquals(2, interfaceWithFields.VALUE_T2);
} }

View File

@@ -202,6 +202,11 @@ class PrimitiveOverloading {
return VARIANTE_BYTE; return VARIANTE_BYTE;
} }
public String neuerVersuch(byte l) {
System.out.println("long");
return "long";
}
} }
class PrimitiveOverloadingTester { class PrimitiveOverloadingTester {
@@ -229,7 +234,30 @@ class PrimitiveOverloadingTester {
// Primitiv, nicht vorhanden, auch kein Wrapper // Primitiv, nicht vorhanden, auch kein Wrapper
assertEquals(VARIANTE_INT, primitiveOverloading.overloadMe((short) 1)); assertEquals(VARIANTE_INT, primitiveOverloading.overloadMe((short) 1));
primitiveOverloading.neuerVersuch((char)12);
OverloadMe2 overloadMe2 = new OverloadMe2();
// overloadMe2.one(1, 1);
overloadMe2.two(new Integer(1));
}
}
class OverloadMe2 {
public int one(double d, int i) {
return 1;
}
public int one(int d, double i) {
return 1;
}
public int two(Long i) {
return 1;
} }
} }

View File

@@ -7,6 +7,9 @@ public class SwitchSyntax {
final int k = 0; final int k = 0;
public SwitchSyntax() { public SwitchSyntax() {
switch(1) {
}
} }
@Test @Test
@@ -21,9 +24,11 @@ public class SwitchSyntax {
break; break;
} }
case 3: case 3:
default: default: {
int j; int j;
System.out.println("default"); System.out.println("default");
}
} }
} }
// Todo SeEi // Todo SeEi

View File

@@ -0,0 +1,52 @@
package org.eidecker.oca8lernen.lastminute;
import org.junit.jupiter.api.Test;
public class InterfacesDefault implements I1, I2{
@Override
public void method() {
System.out.println("Aus InterfacesDefault");
//System.out.println(s2);
//I1.super.method();
//System.out.println(I1.s);
}
}
class Außerhalb {
@Test
public void someMethod() {
I1 i1 = new InterfacesDefault();
i1.method();
System.out.println(i1.s);
System.out.println(i1.s2);
InterfacesDefault i2 = new InterfacesDefault();
i2.method();
System.out.println(((I1) i2).s);
System.out.println(((I2) i2).s);
//System.out.println(i2.s);
}
}
interface I1 {
String s = "Hallo";
String s2 = "Noch einer";
default void method() {
System.out.println("Aus I2");
}
}
interface I2 {
String s = "Welt";
void method();
}

View File

@@ -35,6 +35,7 @@ public class Kleinigkeiten {
public void variabennamen (int i) { public void variabennamen (int i) {
// for (int i = i; ) // for (int i = i; )
// char c = 1.0;
} }
@Test @Test
@@ -130,6 +131,8 @@ interface MySuperInterface extends Serializable, ThreadFactory {
default void m1() { default void m1() {
} }
public abstract void my();
} }
interface MyOtherSuperInterface { interface MyOtherSuperInterface {

View File

@@ -1,15 +1,27 @@
package org.eidecker.oca8lernen.lastminute; package org.eidecker.oca8lernen.lastminute;
import org.eidecker.oca8lernen.lastminute.hilfspackage.PublicClassInEinemAnderenPackage;
import org.junit.jupiter.api.Test;
public class Oberklasse { public class Oberklasse {
public final void publicMethode() { static protected String feldInOberklasse;
public final void publicMethode() {
System.out.println("Public");
} }
private final void privateMethode() { private final void privateMethode() {
} }
@Test
public void test() {
PublicClassInEinemAnderenPackage publicClassInEinemAnderenPackage = new PublicClassInEinemAnderenPackage();
publicClassInEinemAnderenPackage.publicMethode();
}
final void packageMethode() { final void packageMethode() {
System.out.println("packageMethode in Oberklasse"); System.out.println("packageMethode in Oberklasse");
} }

View File

@@ -9,6 +9,17 @@ public class StaticSichtbarkeit {
Ober ober = new Unter(); Ober ober = new Unter();
ober.methode2(ober); // Ober, da zur Compilezeit ausgewählt (Bei Überladen würde nur die Signatur gewählt!) ober.methode2(ober); // Ober, da zur Compilezeit ausgewählt (Bei Überladen würde nur die Signatur gewählt!)
System.out.println(ober.s);
String a = "";
a += "Welt";
// a -= "Welte";
String b = null;
System.out.println(b instanceof Object);
} }
} }

View File

@@ -11,6 +11,16 @@ public class Graph {
e = (E)f; e = (E)f;
} }
@Test
public void testArrayAssignment() {
D[] ds = {};
E[] es = {};
es = (E[])ds;
ds = (D[])es;
}
} }
/* /*

View File

@@ -1,10 +1,23 @@
package org.eidecker.oca8lernen.lastminute.hilfspackage; package org.eidecker.oca8lernen.lastminute.hilfspackage;
import org.eidecker.oca8lernen.lastminute.Oberklasse; import org.eidecker.oca8lernen.lastminute.Oberklasse;
import org.junit.jupiter.api.Test;
import java.io.IOException;
public class KlasseInEinemAnderenPackage extends Oberklasse { public class KlasseInEinemAnderenPackage extends Oberklasse {
protected String feldInOberklasse;
void privateMethode() { void privateMethode() {
try {
// anotherOne();
} catch (Exception e) {
}
}
void anotherOne() throws IOException {
} }
@@ -17,3 +30,17 @@ public class KlasseInEinemAnderenPackage extends Oberklasse {
} }
} }
class AuchInEinemAnderenPackage {
public void publicMethode() {
System.out.println("Public AuchInEinemAnderenPackage");
}
@Test
public void testMe() {
KlasseInEinemAnderenPackage klasseInEinemAnderenPackage = new KlasseInEinemAnderenPackage();
klasseInEinemAnderenPackage.publicMethode();
}
}

View File

@@ -0,0 +1,30 @@
package org.eidecker.oca8lernen.lastminute.hilfspackage;
public class PublicClassInEinemAnderenPackage extends AuchInEinemAnderenPackage {
public static void main(String[] args) {
"Hallo".concat("Test");
}
public static String s;
}
class NochEineSub extends PublicClassInEinemAnderenPackage {
public String s = "nicht statisch";
public static void main(String[] args) {
PublicClassInEinemAnderenPackage n = new NochEineSub();
System.out.println(n.s);
int k;
int j=k=3;
System.out.println(k);
System.out.println(j);
int i = Integer.MIN_VALUE;
int i2 = -i;
System.out.println(i);
System.out.println(i2);
}
}