Java Native Interface (28-Hour Course)



Become an expert the Java Native Interface with this 28-hour course.
Watch part 2 here: https://youtu.be/tEtP10aa0Kg Java for Engineers developed this course. Check out their channel: https://www.youtube.com/channel/UCh2548c9mDuuVrillFD7PVw ⭐️ Course Contents ⭐️
⌨️ (00:00:00) Introduction to Java Native Interface (JNI)
⌨️ (00:19:17) A Simple Java/C++ Project in NetBeans IDE
⌨️ (00:34:14) A Closer Look at JNI Header Files
⌨️ (01:06:36) Setting up C/C++ Development in Eclipse IDE
⌨️ (01:35:49) Configuring External Tool to Generate Header Files
⌨️ (01:59:34) Exporting Java Project to jar File With Dynamic Libraries
⌨️ (02:20:55) Configuring External Tool for JDK 9 or Later
⌨️ (02:32:59) Overloading Native Methods
⌨️ (02:57:45) Overriding Native Methods
⌨️ (03:13:17) Signature of Overloaded Native Methods in C++ (Part 1)
⌨️ (03:45:23) Signature of Overloaded Native Methods in C++ (Part 2)
⌨️ (04:05:44) Order of Execution for Static Initializers in the Class Hierarchy
⌨️ (04:26:27) Working with JNI Primitive Types
⌨️ (04:59:56) Working with Primitive Arrays
⌨️ (05:33:52) Working with Object Arrays
⌨️ (06:21:03) Working with Strings
⌨️ (07:03:49) Accessing Instance Fields of a Java Class in C/C++
⌨️ (07:43:28) Accessing Static Fields of a Java Class in C/C++
⌨️ (08:09:54) Setting Fields of Java Class in C++
⌨️ (08:36:49) Local Caching of Field IDs in C++
⌨️ (09:08:13) Global Caching of Field IDs in C++
⌨️ (09:41:41) Calling Instance Methods of a Java Class in C/C++
⌨️ (10:18:37) Calling Static Methods of a Java Class in C/C++
⌨️ (10:52:33) Calling Methods of a Java Interface in C++
⌨️ (11:21:05) Creating and Returning Java Objects from C++ Code
⌨️ (11:51:21) Downloading and Installing GNU Scientific Library (GSL)
⌨️ (12:11:55) A Simple Example of Java/C++ Library Linking
⌨️ (12:32:12) Working with Boxed Primitives (Wrappers) and List E in C++
⌨️ (12:59:01) Nonvirtual Call of Methods of a Java Class in C++
⌨️ (13:28:10) Linking Against Static C++ Libraries The following sections are in part 2: https://youtu.be/tEtP10aa0Kg
⌨️ Working with Generic (Parameterized) Methods
⌨️ Working with Generic (Template) Classes
⌨️ Working with Java Reflection API (Method & Field) in C++
⌨️ Working with Java Constants (static final) in C++
⌨️ Using Fortran Libraries
⌨️ Generating Header files for Nested Inner Classes
⌨️ Instantiating Nested Inner Classes in C++
⌨️ Implementing Native Methods of Inner Classes
⌨️ Implementing Native Methods of Method-Local Inner Classes
⌨️ Managing Native Resources with JNI
⌨️ Resolving Native File Stream Conflicts
⌨️ Working with Standard Input
⌨️ Working with Standard Output
⌨️ The "auto" Keyword in C++
⌨️ Don't Locally Cache jclass When Creating New Objects in C++
⌨️ JNI Development on Windows Operating System
⌨️ C++ Debug vs. Release Compilation Mode
⌨️ Working with Maven Build
⌨️ Distributing C++ Source Code of JNI Project
⌨️ JNI Development on Linux Operating System
⌨️ Implementing Native Methods of Anonymous Classes
⌨️ Regular vs. Critical Access to Primitive Arrays in C++
⌨️ Regular vs. Critical Access to Java Strings in C++
⌨️ Creating and Working With an "Unsafe" Class
⌨️ The Power of "RegisterNatives" Function of JNI
⌨️ Working with JNI Without Creating Any Header Files
⌨️ Solving the Refactoring Problem Once and For All
⌨️ Using JAR files in C++
⌨️ Understanding javap tool
⌨️ C++ Classes and Structs in Java
⌨️ Handling Java Exceptions 🎉 Thanks to our Champion and Sponsor supporters:
👾 Wong Voon jinq
👾 hexploitation
👾 Katia Moran
👾 BlckPhantom
👾 Nick Raker
👾 Otis Morgan
👾 DeezMaster
👾 Treehouse
👾 AppWrite — Learn to code for free and get a developer job: https://www.freecodecamp.org Read hundreds of articles on programming: https://freecodecamp.org/news And subscribe for new videos on technology every day: https://youtube.com/subscription_center?add_user=freecodecamp

Java Native Interface (28-Hour Course)

Java Native Interface (28-Hour Course)

 

 

 

 

 

 

 

 

 

Contact us

More Java Native Interface (28-Hour Course) Videos

Leave a Reply

Your email address will not be published. Required fields are marked *