Java рдордзреНрдпреЗ, рдХрд╛рд╕реНрдЯрд┐рдВрдЧрд╕рд╛рдареА рд╡реЗрдЧрд╡реЗрдЧрд│реЗ рдкрд░реНрдпрд╛рдп рдЖрд╣реЗрдд. рддреНрдпрд╛рдкреИрдХреА рдПрдХ рдореНрд╣рдгрдЬреЗ java.lang.Class рдХреНрд▓рд╛рд╕рдЪреА cast() рдкрджреНрдзрдд . рд╣реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдпрд╛ рд╡рд░реНрдЧрд╛рдЪреНрдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯрд╡рд░ рдХрд╛рд╕реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ. рдСрдмреНрдЬреЗрдХреНрдЯ рдореНрд╣рдгреВрди рдХрд╛рд╕реНрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдкрджреНрдзрдд рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░рдд рдХрд░рддреЗ.
рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ() рдкрджреНрдзрдд рд╕рд┐рдВрдЯреЕрдХреНрд╕
рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ() рдкрджреНрдзрдд рдпрд╛ рдХреНрд▓рд╛рд╕ рдСрдмреНрдЬреЗрдХреНрдЯрджреНрд╡рд╛рд░реЗ рдкреНрд░рд╕реНрддреБрдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреНрд▓рд╛рд╕ рдХрд┐рдВрд╡рд╛ рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдЯрд╛рдХрддреЗ . рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдЦрд╛рд▓реАрд▓рдкреНрд░рдорд╛рдгреЗ рдХрд╛рд╕реНрдЯ() рдкрджреНрдзрддреАрдЪреЗ рд╡рд░реНрдгрди рдХрд░рддреЗ:public T[] cast(Object obj),
рдЬрд┐рдереЗ obj рдЯрд╛рдХрд╛рдпрдЪрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрд╣реЗ. cast() рдкрджреНрдзрдд рдХрд╛рд╕реНрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░рдд рдХрд░рддреЗ, рдХрд┐рдВрд╡рд╛ obj рд╢реВрдиреНрдп рдЕрд╕рд▓реНрдпрд╛рд╕ null. рдСрдмреНрдЬреЗрдХреНрдЯ рд╢реВрдиреНрдп рдирд╕рд▓реНрдпрд╛рд╕ рдЖрдгрд┐ T рдкреНрд░рдХрд╛рд░рд╛рд╕рд╛рдареА рдирд┐рдпреБрдХреНрдд рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдирд╕рд▓реНрдпрд╛рд╕ рдкрджреНрдзрдд ClassCastException рдЯрд╛рдХрддреЗ . рд╕рд╛рдорд╛рдиреНрдпрддрдГ, рд╡рд░реНрдЧ рдкрджреНрдзрддреА (рдЬрд╕реЗ рдХреА cast() рдХрд┐рдВрд╡рд╛ isInstance() рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде) рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░рд╛рдВрдЪреНрдпрд╛ рд╕рдВрдпреЛрдЧрд╛рдиреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд.
Java рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ() рдкрджреНрдзрдд рдХреЛрдб рдЙрджрд╛рд╣рд░рдг
рдпреЗрдереЗ class.cast() рдкрджреНрдзрддреАрдЪреНрдпрд╛ рдХрд╛рдорд╛рдЪреЗ рдПрдХ рдЫреЛрдЯреЗрд╕реЗ рдкреНрд░рд╛рддреНрдпрдХреНрд╖рд┐рдХ рдЖрд╣реЗ:class Parent {
public static void print() {
System.out.println("print Class Parent...");
}
}
class Child extends Parent {
public static void print() {
System.out.println("print Class Child...");
}
}
public class CDemo {
public static void main(String[] args) {
//Here we have Class cast() method
//demonstration. LetтАЩs have parent and child classes
// and make casting operation
Object myObject = new Parent();
Child myChild = new Child();
myChild.print();
// casts object
Object a = Parent.class.cast(myChild);
System.out.println(myObject.getClass());
System.out.println(myChild.getClass());
System.out.println(a.getClass());
}
}
рдпреЗрдереЗ рдЖрдЙрдЯрдкреБрдЯ рдкреБрдвреАрд▓ рдЖрд╣реЗ:
рдкреНрд░рд┐рдВрдЯ рд╡рд░реНрдЧ рдмрд╛рд▓... рд╡рд░реНрдЧ рдкрд╛рд▓рдХ рд╡рд░реНрдЧ рдмрд╛рд▓ рд╡рд░реНрдЧ рдореВрд▓