null可以被强制类型转换成任意类型的对象

/*首先,我们要知道,静态的方法也是可以通过对象.来访问的,这一点很奇怪,但是确实是可以。
其次,null可以被强制类型转换成任意类型的对象,于是通过它来执行静态方法,就可以理解了。
*/
public class TextClass {
        private static void testMethod(){ //如果吧ststic去掉就会报 NullPointerException
             System. out .println( "testMethod" );
        }
        @SuppressWarnings ( "static-access" )
      public static void main(String[] args ) {
              TextClass. testMethod();
              ((TextClass) null ). testMethod(); //null可以被强制类型转换成任意类型的对象,
                                             //于是通过它来执行静态方法,就可以理解了。
             
        }
     }

你可能感兴趣的:(java)