PrintStream
println(...)
( System.out
).
:
void println(String x)
void println(Object x)
println((A)b)
, println(Object)
, A
String
( , println
). println(b.toString())
, println(String)
, .
b
A
, println() A B. - ( ), , , , , , , .
:
A a2 = (A)b;
, B A. , ( , , , ).
B , . B:
class B extends/implements A {...}
B b = new B();
A a = b;
A a = (A) b
B b = a;
B b = (B) a
, b
A
, , a b
, . , a , //is A
b
, ClassCastException
.
B ( "B" -ness), (instance-) , , B , , A B.
, , , .
, , B b_only()
, a.b_only()
; ((B)a).b_only()
, .