Here is the answer,
JDBC standard java interface to communicate with a database ODBC from Microsoft developed interface to communicate with a database.
JDBC-ODBC driver an interface where the communication is translated from JDBC to ODBC and the communication after the driver to the database is via ODBC.
a-ODBC is for Microsoft and JDBC is for java applications.
b-ODBC can't be directly used with Java because it uses a C interface.
c-ODBC makes use of pointers which have been removed totally from java.
d-ODBC mixes simple and advanced features together and has complex options for simple queries,But JDBC is designed to keep things simple while allowing advanced capabilities when required.
e-ODBC requires manual installation of the ODBC driver manager and driver on all client machines.JDBC drivers are written in java and JDBC code is automatically installable,secure,and portable on all platforms.
f- JDBC API is a natural Java Interface and is built on ODBC. JDBC retains some of the basic feature of ODBC