java - 莫名其妙的 NullPointerException,至少看起来是这样

标签 java nullpointerexception derby

我正在使用 JavaDB 和 Derby 来修改数据库。我试图用

创建一个 View
statement.executeUpdate(SQLUpdate);

哪里SQLUpdate是创建 View 的 SQL 命令的查询,但由于某种原因,Java 在 SQLUpdate 上抛出 NullPointerException 即使我已将其声明如下: private String SQLUpdate; 。//我首先尝试将其声明为局部变量,但后来转而将其声明为整个类可用的私有(private)变量。如果这是 C++,我会让它工作,但考虑到这是 Java,我无权访问指针业务。

有人能给我诊断一下为什么 Java 可能会抛出 NullPointerException 吗?//我已阅读此处的文档:http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#executeUpdate%28java.lang.String%29 (查找 executeUpdate() ),但它没有说明将 SQL 查询存储到字符串变量然后使用 executeUpdate(myStringVariable);

最佳答案

当您尝试调用空对象的方法或引用属性时,Java 会抛出 NullPointerException(通常缩写为 NPE)。

正如上面评论中提到的,您的 statement 对象可能为 null。或者,语句的 executeUpdate 方法内部的某些内容可能会尝试以这种方式访问​​ null 属性。

如果您查看堆栈跟踪,它应该准确地告诉您哪一行产生了错误,并帮助您诊断哪个对象为空。

关于java - 莫名其妙的 NullPointerException,至少看起来是这样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16701431/

相关文章:

java - 加深 Javadoc 背景颜色

java - 将嵌入式数据库打包成jar文件

java - 启动 Derby 数据库失败

android - Dropbox Sync Api for Android 中的奇怪错误

java - 访问被拒绝,嵌入式 Derby 中的问题

java - 将 Java 字符串从全部大写(由下划线分隔的单词)转换为 CamelCase(无单词分隔符)的最简单方法是什么?

java - 使用yangtools解析yang模块失败

java - JAX-WS 和 Spring 运行时建模器错误

java - Android : java. lang.NullPointerException 无法启动 Activity

java - 解析 JSON 对象但遇到 NullPointerException