CodeGym/Java Blog/рдЕрдирд┐рдпрдорд┐рдд/рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐
John Squirrels
рд╕реНрддрд░ 41
San Francisco

рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐

рдЕрдирд┐рдпрдорд┐рдд рдЧреНрд░реБрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд
рд╕рджрд╕реНрдп
рдЬрд╛рд╡рд╛ рдореЗрдВ рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ java.lang.Class рдХреНрд▓рд╛рд╕ рдХрд╛ рдХрд╛рд╕реНрдЯ () рдореЗрдердб рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡рд╕реНрддреБ рдХреЛ рдЗрд╕ рд╡рд░реНрдЧ рдХреА рд╡рд╕реНрддреБ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд┐рдзрд┐ рд╡рд╕реНрддреБ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд╛рд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╡рд╕реНрддреБ рд▓реМрдЯрд╛рддреА рд╣реИред

рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕

рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐ рдЗрд╕ рдХреНрд▓рд╛рд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдП рдЧрдП рд╡рд░реНрдЧ рдпрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдбрд╛рд▓рддреА рд╣реИ ред рдкреНрд░рд▓реЗрдЦрди рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд░реНрдгрди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
public T[] cast(Object obj),
рдЬрд╣рд╛рдВ рдУрдмреАрдЬреЗ рдбрд╛рд▓реА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБ рд╣реИред рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐ рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реМрдЯрд╛рддреА рд╣реИ, рдпрд╛ рдЕрдЧрд░ рдУрдмреАрдЬреЗ рд╢реВрдиреНрдп рд╣реИ рддреЛ рд╢реВрдиреНрдп рд╣реЛ рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рд╢реВрдиреНрдп рдирд╣реАрдВ рд╣реИ рдФрд░ рдЯрд╛рдЗрдк рдЯреА рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ рддреЛ рд╡рд┐рдзрд┐ ClassCastException рдлреЗрдВрдХрддрд╛ рд╣реИ ред рдЖрдо рддреМрд░ рдкрд░, рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде рдХрдХреНрд╖рд╛ рд╡рд┐рдзрд┐рдпреЛрдВ (рдЬреИрд╕реЗ рдХрд╛рд╕реНрдЯ() рдпрд╛ рдЗрдВрд╕реНрдЯреЗрдВрд╕() рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЬрд╛рд╡рд╛ рдХреНрд▓рд╛рд╕ рдХрд╛рд╕реНрдЯ () рд╡рд┐рдзрд┐ рдХреЛрдб рдЙрджрд╛рд╣рд░рдг

рдпрд╣рд╛рдБ 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());
   }
}
рдпрд╣рд╛рдБ рдЖрдЙрдЯрдкреБрдЯ рдЕрдЧрд▓рд╛ рд╣реИ:
рдкреНрд░рд┐рдВрдЯ рдХреНрд▓рд╛рд╕ рдЪрд╛рдЗрд▓реНрдб ... рдХреНрд▓рд╛рд╕ рдкреИрд░реЗрдВрдЯ рдХреНрд▓рд╛рд╕ рдЪрд╛рдЗрд▓реНрдб рдХреНрд▓рд╛рд╕ рдЪрд╛рдЗрд▓реНрдб
рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ
  • рд▓реЛрдХрдкреНрд░рд┐рдп
  • рдирдпрд╛
  • рдкреБрд░рд╛рдирд╛
рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд╕рд╛рдЗрди рдЗрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛
рдЗрд╕ рдкреЗрдЬ рдкрд░ рдЕрднреА рддрдХ рдХреЛрдИ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдирд╣реАрдВ рд╣реИрдВ