1 /* 2 * Copyright (C) 2014 The Android Open Source Project 3 * Copyright (c) 1994, 2008, Oracle and/or its affiliates. All rights reserved. 4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 5 * 6 * This code is free software; you can redistribute it and/or modify it 7 * under the terms of the GNU General Public License version 2 only, as 8 * published by the Free Software Foundation. Oracle designates this 9 * particular file as subject to the "Classpath" exception as provided 10 * by Oracle in the LICENSE file that accompanied this code. 11 * 12 * This code is distributed in the hope that it will be useful, but WITHOUT 13 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15 * version 2 for more details (a copy is included in the LICENSE file that 16 * accompanied this code). 17 * 18 * You should have received a copy of the GNU General Public License version 19 * 2 along with this work; if not, write to the Free Software Foundation, 20 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 21 * 22 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 23 * or visit www.oracle.com if you need additional information or have any 24 * questions. 25 */ 26 27 package java.lang; 28 29 /** 30 * Thrown if the Java Virtual Machine or a <code>ClassLoader</code> instance 31 * tries to load in the definition of a class (as part of a normal method call 32 * or as part of creating a new instance using the <code>new</code> expression) 33 * and no definition of the class could be found. 34 * <p> 35 * The searched-for class definition existed when the currently 36 * executing class was compiled, but the definition can no longer be 37 * found. 38 * 39 * @author unascribed 40 * @since JDK1.0 41 */ 42 public 43 class NoClassDefFoundError extends LinkageError { 44 private static final long serialVersionUID = 9095859863287012458L; 45 46 /** 47 * Constructs a <code>NoClassDefFoundError</code> with no detail message. 48 */ NoClassDefFoundError()49 public NoClassDefFoundError() { 50 super(); 51 } 52 53 /** 54 * Constructs a <code>NoClassDefFoundError</code> with the specified 55 * detail message. 56 * 57 * @param s the detail message. 58 */ NoClassDefFoundError(String s)59 public NoClassDefFoundError(String s) { 60 super(s); 61 } 62 63 // Android-added: A new constructor for use by the Android runtime. 64 /** 65 * Constructs a new {@code NoClassDefFoundError} with the current stack 66 * trace, the specified detail message and the specified cause. Used 67 * internally by the Android runtime. 68 * 69 * @param detailMessage 70 * the detail message for this error. 71 * @param throwable 72 * the cause of this error. 73 */ NoClassDefFoundError(String detailMessage, Throwable throwable)74 private NoClassDefFoundError(String detailMessage, Throwable throwable) { 75 super(detailMessage, throwable); 76 } 77 } 78