A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© redsifei 中级黑马   /  2015-10-28 23:17  /  556 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

null为什么可以调用静态方法呢?

5 个回复

倒序浏览
不可以调用 静态方法可以通过创建对象和类名调用 null只是一个空常量 不属于那两种
回复 使用道具 举报
本帖最后由 ColdMoon 于 2015-10-29 00:48 编辑
  1. import java.util.*;

  2. public class Test
  3. {
  4.   public static int i=300;
  5.    
  6.   public static void print()
  7.   {
  8.     System.out.println("i is "+String.valueOf(i));
  9.   }
  10.   public static void main(String[]args)
  11.   {
  12.     Test apple=null;
  13.     System.out.println(apple.i);
  14.     apple.print();
  15.   }
  16. }
复制代码

输出结果是300

i is 300

方法在main方法调用时会在内存生成一份拷贝,所以它能够在它的类的任何对象创建之前被访问,而非静态的方法只能被实例化的对象访问但是在正常编程的时候不会这么用哦,都会按照正常编程来做的
回复 使用道具 举报
3Q.................
回复 使用道具 举报
ColdMoon 发表于 2015-10-29 00:43
输出结果是300

i is 300

3Q.................
回复 使用道具 举报
null也是个对象,当然可以调用  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马