为什么抛出异常呢,我
null 
java.lang.NullPointerException 
at hava.main(hava.java:16) import java.sql.*; 
public class hava { 
  public static final String sq="select * from use_login"; 
  public static final String[] columnNames ={"name","position"}; 
  static Statement stmt; 
  static Object data[][]; 
  public static void main(String args[]){ 
  try{ 
  ConnectionSQL.connect(); 
    stmt=ConnectionSQL.con.createStatement(); 
  ResultSet rs=stmt.executeQuery(sq); 
  int i=0; 
  while(rs.next()){ 
data[i][0]=rs.getString("name"); 
data[i][1]=rs.getString("position");  
i++;  
  }   } 
  catch(Exception e ){ 
  e.printStackTrace(); 
  
  } 
  
System.out.println(data);   
  } 
  
  

数据库连接上去了 只是我把rs集 传给个二维数据,为什么会出现异常呢,、

解决方案 »

  1.   

    static Object data[][]; 
    ---------------------------->
    static Object data[][] = new Object[10][10]; 
      

  2.   

    static Object data[][]; 
    数组是空的
      

  3.   


    不是数组是空的,是根本没有这个数组~~
    这里仅仅是声明了一个数组的引用,没有创建数组对象。
    编译器会自动给类变量初始化,所以这里不会报编译错误。但是数组是对象,默认初始化为null,所以后面就会报空指针错误。
    java中new的数组不需要初始化,因为它是对象,会自动初始化内部成员(int为0,对象为null,等等)。