Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Kiegészítés

  • Loading branch information...
commit 7bef654f60dee5fe04cd7c167aa5ca824e5a21e1 1 parent 0660996
@rlegendi authored
Showing with 25 additions and 1 deletion.
  1. +15 −1 10-generics/10-generics.md
  2. +10 −0 todo.md
View
16 10-generics/10-generics.md
@@ -45,6 +45,18 @@ void print(Collection c) {
}
```
+Első próba: használjunk Objectet:
+
+``` java
+void print(Collection<Object> c) {
+ for (Object o : c) System.out.println(o);
+}
+```
+
+Fordul? Fordul! Működik? Néha... **Fail!** A gond az, hogy mivel `Collection<X>`
+nem leszármazottja a `Collection<Object>` típusnak, kizárólag `Collection<Object>`
+paraméterrel hívható meg. Nem túl hasznos...
+
A megoldás a wildcard használata: `Collection<?>` minden kollekcióra ráillik.
Ilyenkor `Objectként` hivatkozhatunk az elemekre:
@@ -63,7 +75,9 @@ l.add(new Object()); // forditasi hiba
```
Nem tudjuk, hogy mi van benne, lekérdezni viszont lehet (mert tudjuk, hogy
-minden objektum az `Object` leszármazottja).
+minden objektum az `Object` leszármazottja). Ha lehetne belepakolni, az
+veszélyeztetné a program típusbiztonságát. Az egyetlen kivétel ezalól a
+`null` érték (ez mindennek értékül adható).
## Bounded wildcard ##
Amikor tudjuk, hogy adott helyen csak adott osztály leszármazottai
View
10 todo.md
@@ -62,6 +62,16 @@ Függőségek:
* Garbage Collector (GC): szemétgyűjtő
## Gyakok ##
+### 01-bevezetes ###
+Új feladat: konvertálj fokokat! Forrás: http://en.wikipedia.org/wiki/Celsius (2011.11.29.)
+
+from Celsius to Celsius
+Fahrenheit [°F] = [°C] × 9⁄5 + 32 [°C] = ([°F] − 32) × 5⁄9
+Kelvin [K] = [°C] + 273.15 [°C] = [K] − 273.15
+Rankine [°R] = ([°C] + 273.15) × 9⁄5 [°C] = ([°R] − 491.67) × 5⁄9
+For temperature intervals rather than specific temperatures,
+ 1 °C = 1 K = 1.8 °F = 1.8 °R
+
### 02-fuggvenyek-csomagok ###
* default konstruktor, main is dobhat kivételt, nem a szignatúra része
* csomagokat, láthatóságot, felsorolási típusokat, interfészeket,
Please sign in to comment.
Something went wrong with that request. Please try again.