2013. január 4., péntek

New classes and methods in Java 8

Here is a small list of new classes and methods in Java 8 b70:


--------------------------------
java/io/DefaultFileSystem
class DefaultFileSystem

--------------------------------
java/lang/AbstractStringBuilder
AbstractStringBuilder append(AbstractStringBuilder asb)

--------------------------------
java/lang/Boolean
public static int hashCode(boolean value)

--------------------------------
java/lang/Byte
public static int hashCode(byte value)
public static int toUnsignedInt(byte x)
public static long toUnsignedLong(byte x)
public static final int BYTES = SIZE / Byte.SIZE

--------------------------------
java/lang/Character
public static final UnicodeBlock ARABIC_EXTENDED_A = new UnicodeBlock("ARABIC_EXTENDED_A", "ARABIC EXTENDED-A", "ARABICEXTENDED-A")
public static final UnicodeBlock SUNDANESE_SUPPLEMENT = new UnicodeBlock("SUNDANESE_SUPPLEMENT", "SUNDANESE SUPPLEMENT", "SUNDANESESUPPLEMENT")
public static final UnicodeBlock MEETEI_MAYEK_EXTENSIONS = new UnicodeBlock("MEETEI_MAYEK_EXTENSIONS", "MEETEI MAYEK EXTENSIONS", "MEETEIMAYEKEXTENSIONS")
public static final UnicodeBlock MEROITIC_HIEROGLYPHS = new UnicodeBlock("MEROITIC_HIEROGLYPHS", "MEROITIC HIEROGLYPHS", "MEROITICHIEROGLYPHS")
public static final UnicodeBlock MEROITIC_CURSIVE = new UnicodeBlock("MEROITIC_CURSIVE", "MEROITIC CURSIVE", "MEROITICCURSIVE")
public static final UnicodeBlock SORA_SOMPENG = new UnicodeBlock("SORA_SOMPENG", "SORA SOMPENG", "SORASOMPENG")
public static final UnicodeBlock CHAKMA = new UnicodeBlock("CHAKMA")
public static final UnicodeBlock SHARADA = new UnicodeBlock("SHARADA")
public static final UnicodeBlock TAKRI = new UnicodeBlock("TAKRI")
public static final UnicodeBlock MIAO = new UnicodeBlock("MIAO")
public static final UnicodeBlock ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS = new UnicodeBlock("ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS", "ARABIC MATHEMATICAL ALPHABETIC SYMBOLS", "ARABICMATHEMATICALALPHABETICSYMBOLS")
public static int hashCode(char value)
public static final int BYTES = SIZE / Byte.SIZE

--------------------------------
java/lang/Class
public <A extends Annotation> A[] getAnnotations(Class<A> annotationClass)
public <A extends Annotation> A getDeclaredAnnotation(Class<A> annotationClass)
public <A extends Annotation> A[] getDeclaredAnnotations(Class<A> annotationClass)

--------------------------------
java/lang/Double
public static final int BYTES = SIZE / Byte.SIZE
public static boolean isFinite(double d)
public static int hashCode(double value)

--------------------------------
java/lang/Float
public static final int BYTES = SIZE / Byte.SIZE
public static boolean isFinite(float f)
public static int hashCode(float value)

--------------------------------
java/lang/Integer
public static String toUnsignedString(int i, int radix)
public static String toUnsignedString(int i)
public static int parseUnsignedInt(String s, int radix) throws NumberFormatException
public static int parseUnsignedInt(String s) throws NumberFormatException
public static int hashCode(int value)
public static int compareUnsigned(int x, int y)
public static long toUnsignedLong(int x)
public static int divideUnsigned(int dividend, int divisor)
public static int remainderUnsigned(int dividend, int divisor)
public static final int BYTES = SIZE / Byte.SIZE

--------------------------------
java/lang/InternalError
public InternalError(String message, Throwable cause)
public InternalError(Throwable cause)

--------------------------------
java/lang/Long
public static String toUnsignedString(long i, int radix)
public static String toUnsignedString(long i)
public static long parseUnsignedLong(String s, int radix) throws NumberFormatException
public static long parseUnsignedLong(String s) throws NumberFormatException
public static int hashCode(long value)
public static int compareUnsigned(long x, long y)
public static long divideUnsigned(long dividend, long divisor)
public static long remainderUnsigned(long dividend, long divisor)
public static final int BYTES = SIZE / Byte.SIZE

--------------------------------
java/lang/Math
public static int addExact(int x, int y)
public static long addExact(long x, long y)
public static int subtractExact(int x, int y)
public static long subtractExact(long x, long y)
public static int multiplyExact(int x, int y)
public static long multiplyExact(long x, long y)
public static int toIntExact(long value)
public static int floorDiv(int x, int y)
public static long floorDiv(long x, long y)
public static int floorMod(int x, int y)
public static long floorMod(long x, long y)
public static double nextDown(double d)
public static float nextDown(float f)

--------------------------------
java/lang/Package
public <A extends Annotation> A[] getAnnotations(Class<A> annotationClass)
public <A extends Annotation> A getDeclaredAnnotation(Class<A> annotationClass)
public <A extends Annotation> A[] getDeclaredAnnotations(Class<A> annotationClass)

--------------------------------
java/lang/Process
public boolean waitFor(long timeout, TimeUnit unit) throws InterruptedException
public Process destroyForcibly()
public boolean isAlive()

--------------------------------
java/lang/Short
public static int hashCode(short value)
public static final int BYTES = SIZE / Byte.SIZE
public static int toUnsignedInt(short x)
public static long toUnsignedLong(short x)

--------------------------------
java/lang/StrictMath
public static int addExact(int x, int y)
public static long addExact(long x, long y)
public static int subtractExact(int x, int y)
public static long subtractExact(long x, long y)
public static int multiplyExact(int x, int y)
public static long multiplyExact(long x, long y)
public static int toIntExact(long value)
public static int floorDiv(int x, int y)
public static long floorDiv(long x, long y)
public static int floorMod(int x, int y)
public static long floorMod(long x, long y)
public static double nextDown(double d)
public static float nextDown(float f)

--------------------------------
java/lang/StringBuffer
@Override synchronized StringBuffer append(AbstractStringBuilder asb)

--------------------------------
java/lang/ThreadLocal
public static <T> ThreadLocal<T> withInitial(Supplier<? extends T> supplier)

--------------------------------
java/lang/VirtualMachineError
public VirtualMachineError(String message, Throwable cause)
public VirtualMachineError(Throwable cause)

--------------------------------
java/lang/annotation/ContainedBy
@Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) public @interface ContainedBy

--------------------------------
java/lang/annotation/ContainerFor
@Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) public @interface ContainerFor

--------------------------------
java/lang/annotation/ElementType

--------------------------------
java/lang/annotation/InvalidContainerAnnotationError
public class InvalidContainerAnnotationError extends AnnotationFormatError

--------------------------------
java/lang/annotation/Native
@Documented @Target(ElementType.FIELD) @Retention(RetentionPolicy.SOURCE) public @interface Native

--------------------------------
java/lang/management/LockInfo
public static LockInfo from(CompositeData cd)

--------------------------------
java/lang/reflect/AccessibleObject
public <T extends Annotation> T[] getAnnotations(Class<T> annotationClass)
public <T extends Annotation> T getDeclaredAnnotation(Class<T> annotationClass)
public <T extends Annotation> T[] getDeclaredAnnotations(Class<T> annotationClass)

--------------------------------
java/lang/reflect/AnnotatedElement
<T extends Annotation> T[] getAnnotations(Class<T> annotationClass)
<T extends Annotation> T getDeclaredAnnotation(Class<T> annotationClass)
<T extends Annotation> T[] getDeclaredAnnotations(Class<T> annotationClass)

--------------------------------
java/lang/reflect/Executable
public abstract class Executable extends AccessibleObject implements Member, GenericDeclaration
public <T extends Annotation> T[] getAnnotations(Class<T> annotationClass)

--------------------------------
java/lang/reflect/Field
public <T extends Annotation> T[] getAnnotations(Class<T> annotationClass)

--------------------------------
java/math/BigInteger
public long longValueExact()
public int intValueExact()
public short shortValueExact()
public byte byteValueExact()

--------------------------------
java/security/cert/CertPathBuilder
public final CertPathChecker getRevocationChecker()

--------------------------------
java/security/cert/CertPathBuilderSpi
public CertPathChecker engineGetRevocationChecker()

--------------------------------
java/security/cert/CertPathChecker
public interface CertPathChecker

--------------------------------
java/security/cert/CertPathValidator
public final CertPathChecker getRevocationChecker()

--------------------------------
java/security/cert/CertPathValidatorSpi
public CertPathChecker engineGetRevocationChecker()

--------------------------------
java/security/cert/Certificate
public void verify(PublicKey key, Provider sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, SignatureException

--------------------------------
java/security/cert/PKIXRevocationChecker
public abstract class PKIXRevocationChecker extends PKIXCertPathChecker

--------------------------------
java/security/cert/X509CRL
public void verify(PublicKey key, Provider sigProvider) throws CRLException, NoSuchAlgorithmException, InvalidKeyException, SignatureException

--------------------------------
java/security/cert/X509Certificate
public void verify(PublicKey key, Provider sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, SignatureException

--------------------------------
java/util/Base64
public class Base64
public static class Encoder
public static class Decoder

--------------------------------
java/util/Calendar
public static final int NARROW_FORMAT = 4
public static final int NARROW_STANDALONE = NARROW_FORMAT | STANDALONE_MASK
public static final int SHORT_FORMAT = 1
public static final int LONG_FORMAT = 2
public static final int SHORT_STANDALONE = SHORT | STANDALONE_MASK
public static final int LONG_STANDALONE = LONG | STANDALONE_MASK
public String getCalendarType()

--------------------------------
java/util/Collections
public static <E> Queue<E> checkedQueue(Queue<E> queue, Class<E> type)
@SuppressWarnings("unchecked") public static final <E> SortedSet<E> emptySortedSet()

--------------------------------
java/util/GregorianCalendar
@Override public String getCalendarType()

--------------------------------
java/util/Locale
public boolean hasExtensions()
public Locale stripExtensions()
public static enum FilteringMode
public static final class LanguageRange
public static List<Locale> filter(List<LanguageRange> priorityList, Collection<Locale> locales, FilteringMode mode)
public static List<Locale> filter(List<LanguageRange> priorityList, Collection<Locale> locales)
public static List<String> filterTags(List<LanguageRange> priorityList, Collection<String> tags, FilteringMode mode)
public static List<String> filterTags(List<LanguageRange> priorityList, Collection<String> tags)
public static Locale lookup(List<LanguageRange> priorityList, Collection<Locale> locales)
public static String lookupTag(List<LanguageRange> priorityList, Collection<String> tags)

--------------------------------
java/util/function/BinaryOperator
public interface BinaryOperator<T>

--------------------------------
java/util/function/Block
public interface Block<T>

--------------------------------
java/util/function/DoubleBinaryOperator
public interface DoubleBinaryOperator /* extends BinaryOperator<Double> */

--------------------------------
java/util/function/DoubleBlock
public interface DoubleBlock

--------------------------------
java/util/function/DoubleFunction
public interface DoubleFunction<T>

--------------------------------
java/util/function/DoubleSupplier
public interface DoubleSupplier

--------------------------------
java/util/function/DoubleUnaryOperator
public interface DoubleUnaryOperator

--------------------------------
java/util/function/Function
public interface Function<T, R>

--------------------------------
java/util/function/IntBinaryOperator
public interface IntBinaryOperator

--------------------------------
java/util/function/IntBlock
public interface IntBlock

--------------------------------
java/util/function/IntFunction
public interface IntFunction<T>

--------------------------------
java/util/function/IntSupplier
public interface IntSupplier

--------------------------------
java/util/function/IntUnaryOperator
public interface IntUnaryOperator

--------------------------------
java/util/function/LongBinaryOperator
public interface LongBinaryOperator

--------------------------------
java/util/function/LongBlock
public interface LongBlock

--------------------------------
java/util/function/LongFunction
public interface LongFunction<T>

--------------------------------
java/util/function/LongSupplier
public interface LongSupplier

--------------------------------
java/util/function/LongUnaryOperator
public interface LongUnaryOperator

--------------------------------
java/util/function/Predicate
public interface Predicate<T>

--------------------------------
java/util/function/Supplier
public interface Supplier<T>

--------------------------------
java/util/function/UnaryOperator
public interface UnaryOperator<T>

--------------------------------
java/util/spi/CalendarDataProvider
public abstract class CalendarDataProvider extends LocaleServiceProvider

--------------------------------
java/util/spi/CalendarNameProvider
public abstract class CalendarNameProvider extends LocaleServiceProvider

--------------------------------
java/util/spi/LocaleServiceProvider
public boolean isSupportedLocale(Locale locale)

--------------------------------
java/util/spi/ResourceBundleControlProvider
public interface ResourceBundleControlProvider

--------------------------------
java/util/spi/TimeZoneNameProvider
public String getGenericDisplayName(String ID, int style, Locale locale)

--------------------------------
java/util/zip/Adler32
public void update(ByteBuffer buffer)

--------------------------------
java/util/zip/CRC32
public void update(ByteBuffer buffer)

--------------------------------
javax/lang/model/SourceVersion
RELEASE_8

--------------------------------
javax/lang/model/type/IntersectionType
public interface IntersectionType extends TypeMirror

--------------------------------
javax/lang/model/type/TypeKind
INTERSECTION

--------------------------------
javax/lang/model/type/TypeVisitor
R visitIntersection(IntersectionType t, P p)

--------------------------------
javax/lang/model/util/AbstractAnnotationValueVisitor8
@SupportedSourceVersion(RELEASE_8) public abstract class AbstractAnnotationValueVisitor8<R, P> extends AbstractAnnotationValueVisitor7<R, P>

--------------------------------
javax/lang/model/util/AbstractElementVisitor8
@SupportedSourceVersion(RELEASE_8) public abstract class AbstractElementVisitor8<R, P> extends AbstractElementVisitor7<R, P>

--------------------------------
javax/lang/model/util/AbstractTypeVisitor6
public R visitIntersection(IntersectionType t, P p)

--------------------------------
javax/lang/model/util/AbstractTypeVisitor8
public abstract class AbstractTypeVisitor8<R, P> extends AbstractTypeVisitor7<R, P>

--------------------------------
javax/lang/model/util/ElementKindVisitor8
@SupportedSourceVersion(RELEASE_8) public class ElementKindVisitor8<R, P> extends ElementKindVisitor7<R, P>

--------------------------------
javax/lang/model/util/ElementScanner8
@SupportedSourceVersion(RELEASE_8) public class ElementScanner8<R, P> extends ElementScanner7<R, P>

--------------------------------
javax/lang/model/util/SimpleAnnotationValueVisitor8
@SupportedSourceVersion(RELEASE_8) public class SimpleAnnotationValueVisitor8<R, P> extends SimpleAnnotationValueVisitor7<R, P>

--------------------------------
javax/lang/model/util/SimpleElementVisitor8
@SupportedSourceVersion(RELEASE_8) public class SimpleElementVisitor8<R, P> extends SimpleElementVisitor7<R, P>

--------------------------------
javax/lang/model/util/SimpleTypeVisitor8
@SupportedSourceVersion(RELEASE_8) public class SimpleTypeVisitor8<R, P> extends SimpleTypeVisitor7<R, P>

--------------------------------
javax/lang/model/util/TypeKindVisitor8
@SupportedSourceVersion(RELEASE_8) public class TypeKindVisitor8<R, P> extends TypeKindVisitor7<R, P>

--------------------------------
javax/tools/StandardLocation
NATIVE_HEADER_OUTPUT

--------------------------------
javax/tools/annotation/GenerateNativeHeader
@Documented @Target(TYPE) @Retention(SOURCE) public @interface GenerateNativeHeader

2013. január 1., kedd

Játékok: vegyesvágott kaland

Deponia

Metacritic: 74

A Daedalic Entertainment point-and-click kalandjátéka, amit a nemrég megjelent Chaos on Deponia kapcsán vettem meg. Érdekes és humoros játék, viszont jó párszor bele kellett néznem a végigjátszásba. Az Achievementek relatíve egyszerűek voltak. Aki ismeri a The Whispered World játékukat, az most fellélegezhet, mert vége a végtelen dumának és a számtalan kattintható helyszínnek. Az irányítás egyszerűbb, mert elég az egér két gombjával utasításokat adni (akció+megnéz). Elsőre kb. 10 órába tellett, másodikra, a Droggleljug teljesítményhez már csak 1 óra kellett.

Értékelés: 80%

Chaos on Deponia


Metacritic: 79

Némiképp fejlődött az előző részhez képest. Továbbra is vicces és érdekes, de pl. az Achievementek harmada már korántsem olyan triviális. 12 óra játék után még 10 db hiányzik. Összességében jó sorozat, és amint megjelenik az utolsó, Good bye Deponia, érdemes mindhármat egy csomagban megvenni, és kijátszani.

Értékelés: 85%

A New Beginning: Final cut


Ugyanattól a Daedalic Entertainment-től származik, de egy Deponia-nál korábbi játékuk, ráadásul konzolról hozták át. Ha játszottál a Deponia sorozattal, könnyen felismered a főhősnő rajzolatát (bár szerintem kicsit furcsán áll a lába.) Érdekes történet, puzzle-ök. Az Achievementek relatíve értelemszerűek, bár néha nehéz volt előre eldönteni, hogy most történet függő-e (90%), vagy speciális, újratöltést vagy újrajátszást ígényel. Nem rossz, de azért inkább leárazáskor érdemes megvenni. A vezérlés talán egy kicsit körülményes, mert 4 slotnyi akció lehetséges, amint a cél fölötti némi egérgomb lenyomva tartással lehet előhívni, á la The Whispered World. A Deponia irányítása jobban feküdt nekem.

Értékelés 75%

Lost Horizon


Ez viszont már egy másik bandától van: Deep Silver, amit a Secret Files sorozatból lehet ismerős. A SF 3 előrendelésekor kaptam meg, meg is feletkeztem róla. Meglepően messzire jutottam benne, talán a korábbi játékokban szerzett friss tapasztalatnak köszönhetően, mielőtt a végigjátszáshoz kellett nyúlnom. Achievementek nincsenek benne.

Értékelés 75%