顾名思义,当 Java 虚拟机 (JVM) 尝试加载特定类时,Java 中会发生 ClassNotFoundException。在你指定的类的路径中找不到请求的类,这意味着你指定的类的路径被破坏了,这个问题在Java世界里确实很常见。因此,ClassNotFoundException在Java中也很常见。这个问题对于 Java 初学者来说非常困惑,ClassNotFoundException 必须被 catch 或抛出给调用者 ClassNotFoundException 是一个受检查的异常。
广告 该类别中的热门课程 JAVA 掌握 - 专业化 | 78 课程系列 | 15 次模拟测试开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
Java中ClassNotFoundException的语法如下:
java.lang.ClassNotFoundException:Class_name at location
//a class called program is defined public class Program { //main method is called public static void main(String args[]) { //class not found exception is defined using try and catch block try { // the forname method in class class looks for the mentioned class Class.forName("The Class do not Exist"); } catch (ClassNotFoundException e) { e.printStackTrace(); } } }
上述程序的输出如下图所示:
在上面的程序中,定义了一个名为Program的类。然后调用main方法。然后使用 try 和 catch 块定义类未找到异常。类加载器试图查找的类不存在,并且类中的 forname 方法查找所提到的类,但未能找到;因此抛出 ClassNotFoundException。程序的输出如上面的快照所示。
Java中有几个ClassNotFoundException的构造函数。他们是:
以下是下面提到的示例:
演示 ClassNotFoundException 的 Java 程序:
代码:
//a class called exceptiondemo is defined public class Exceptiondemo { //a string variable is defined private static final String DRIVE_CLASS = "com.mysql.jdbc.Driver"; //main method is called including the exception public static void main(String[] args) throws Exception { System.out.println("MySQL JDBC driver loading attempt"); //the forname method in class class looks for the mentioned class Class.forName(DRIVE_CLASS); } }
上述程序的输出如下图所示:
在上面的程序中,定义了一个名为Exception demo的类。然后调用main方法。然后定义一个字符串变量,向其分配 JDBC 驱动程序路径。然后调用 main 方法,该方法抛出异常。类加载器尝试查找指定类的 JDBC 驱动程序路径,并且类中的 forname 方法查找所提到的类,但未能找到;因此抛出 ClassNotFoundException。程序的输出如上面的快照所示。
演示 ClassNotFoundException(String) 的 Java 程序
代码:
//a class called check is defined public class Check { //main method is called public static void main(String args[]) { //class not found exception is defined using try catch block try { //the forname method in class class looks for the mentioned class Class.forName("Demonstrating class not found exception"); } catch(ClassNotFoundException e) { //the string specified along with the class not found exception is displayed. System.out.println("There is no class as specified in the path " + e); } } }
上述程序的输出如下图所示:
在上面的程序中,定义了一个名为check的类。然后调用main方法。然后调用main方法。然后使用 try 和 catch 块定义类未找到异常。 然后 class 中的 forename 方法查找所提到的类,但没有找到;因此,抛出 ClassNotFoundException 并显示指定为详细消息的字符串以及未找到类异常。程序的输出如上面的快照所示。
避免 ClassNotFoundException 的步骤:
在本教程中,我们通过定义了解 Java 中的 Class Not Found Exception 的概念、Java 中的 Class Not Found Exception 的语法、Java 中的 Class Not Found Exception 的工作原理以及通过示例及其输出来了解它们的构造函数。
以上是Java 类未找到异常的详细内容。更多信息请关注PHP中文网其他相关文章!