public static void verifyClassAndMethodExistence(
			PrintWriter reporter) {
		try {
			Class<?> s = Class.forName("Student");

			// Checking for method presence and return type...........
			try {
				Method m = s.getMethod("addExamGrade", double.class);

				m = s.getMethod("getExamCount", null);
				if (!m.getReturnType().equals(int.class))
					reporter.println("The return type for "
							+ m.getName() + " is:"
							+ m.getReturnType() + "instead of int.");

				m = s.getMethod("getAverage", null);
				if (!m.getReturnType().equals(double.class))
					reporter.println("The return type for "
							+ m.getName() + " is:"
							+ m.getReturnType()
							+ "instead of double.");

				m = s.getMethod("getLetterGrade", null);
				if (!m.getReturnType().equals(char.class))
					reporter.println("The return type for "
							+ m.getName() + " is:"
							+ m.getReturnType() + "instead of char.");

				m = s.getMethod("getName", null);
				if (!m.getReturnType().equals(String.class))
					reporter.println("The return type for "
							+ m.getName() + " is:"
							+ m.getReturnType()
							+ "instead of String.");

				m = s.getMethod("toString", null);
				if (!m.getReturnType().equals(String.class))
					reporter.println("The return type for "
							+ m.getName() + " is:"
							+ m.getReturnType()
							+ "instead of String.");

			}
			catch (NoSuchMethodException e) {
				reporter.println(e.toString());
			}

		}
		catch (SecurityException e) {
			e.printStackTrace();
		}

		catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}