technifyed

freeCodeCamp via YouTube Free video

Java Native Interface (28-Hour Course)

Overview

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

👾 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

❤️ Support for this channel comes from our friends at Scrimba – the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp

Advantages and disadvantages

Advantages

  • Completely free, with no ads inside the lessons.
  • Project-based: you build real apps as you learn.
  • freeCodeCamp's own certifications are free and well known among developers.
  • Free, one long video that covers a topic end to end.
  • Use the chapters to jump to what you need.
  • Completely free.
  • Self-paced: start any time.
  • Start watching right away, no sign-up.

Disadvantages

  • YouTube videos are long single recordings; you pace yourself.
  • Less theory than a university course.
  • No exercises or certificate: code along to make it stick.
  • No certificate.
  • No graded assignments or feedback.

Some points apply to every course of this kind; see how we rank.

Free

  • Free: Watch on YouTube, no account needed.
  • Certificate: None. Code or take notes along to make it stick.

freeCodeCamp is in Tier 3: good universities, respected companies, nonprofits and well-known teachers of our institution ranking (78/100). Free full courses and certifications; practical, but not university-level depth.

Similar courses

Compare these

Massachusetts Institute of Technology · YouTube

MIT 15.S12 Blockchain and Money, Fall 2018

Instructor: Prof. Gary Gensler View the complete course: https://ocw.mit.edu/15-S12F18 This course is for students wishing to explore blockchain technology’s potential use - by entrepreneurs & incumbents - to change the world of money and finance. License: Creative Commons BY-NC-SA More information…

Free video23 videos, 29 hours

Massachusetts Institute of Technology · YouTube

MIT 6.006 Introduction to Algorithms, Fall 2011

This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performa…

Free video47 videos, 42 hours

Harvard University · YouTube

CS50's Introduction to Programming with Python (CS50P) 2022

This is CS50P, CS50's Introduction to Programming with Python. Register for free at https://cs50.edx.org/python. Slides and source code at https://cs50.harvard.edu/python. Playlist at https://www.youtube.com/playlist?list=PLhQjrBD2T3817j24-GogXmWqO5Q5vYy0V. An introduction to programming using a la…

Free video11 videos, 16 hours

Harvard University · YouTube

CS50x 2023 Lectures

This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming, for concentrators and non-concentrators alike, with or without prior programming experience. (Two thirds of CS50 students have never taken CS before.) This course teaches…

Free video12 videos, 26 hours

Massachusetts Institute of Technology · YouTube

MIT 6.100L Introduction to CS and Programming using Python, Fall 2022

Instructor: Ana Bell View the complete course: https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-programming-using-python-fall-2022/ *Note: Lectures 6, 10 have been updated! This subject is aimed at students with little to no programming experience. It aims to provide students with an under…

Free video26 videos, 28 hours

Stanford University · YouTube

Stanford Online Courses and Programs

Get more information about the courses and programs we offer. In this playlist you can learn more about course content, pricing, credentials and more!

Free video154 videos, 139 hours