Learn the fundamentals of Java programming and kickstart your career in one of the most in-demand professions of today.
This course includes the fundamental Java programming techniques such as object-oriented programming, operators, and the fundamentals of Maven.
Participants will also be exposed to Maven and how to implement it to their Java projects. For this course, participants will be using Eclipse as their IDE
By the end of this course, participants will be able to describe object-oriented concepts, object-oriented programming (OOP) concepts, and Java platforms and technologies.
Duration
5 days / 40 hours
Level
Beginner to Intermediate
Delivery
100% Online - Instructor Led
Request For Information
Key Features
- 40 hours of instructor led training
- Fully Online
- Class recording available
- Interactive Learning
- 8 hour Coaching Session
- 100% HRDF SBL-KHAS Claimable!
Pre-Requisites
- Basic Programming Knowledge
- Analytical Mindset
- Willingness to self learn online
- No prior experience is required
- We will start from the very basics
- Committed to complete all tasks
Who Should Join
- Professional switching careers
- Business Analysts
- IT Engineers
- Students
- New Programmers
- Anyone interested in Java development
Key Learning Outcomes
Upon completion, participants should be able to demonstrate each of the following outcome:-
- Master the fundamentals of Java to steer yourself in the right path of your career
- Learn the core Java skills needed to apply for your Java projects
- Acquire essential java basics for transitioning into various frameworks along your career.
- Learn what Maven is and Why it is so popular
- Master all the core concepts of Maven
- Deploy your Java project to Maven Central or other Maven repositories
- Use Apache Maven to build, test, package, and deploy your Java application
- Leverage Apache Maven's Convention over Configuration.
Core Skills Areas Covered
Object-Oriented Programming
Operators
Exception Handling
Inheritance
POM Projects
Subscribe to our newsletter – and be first to get all the updates on our upcoming programmes and industry insights.
We don’t share your information or spam you. Unsubscribe anytime.
Course Modules Covered in the Java with Maven program
Day 1 - Programming Concepts, Writing Java Programs, Data Types, Operators, Statements
Programming Concepts
- What is Programming
- Components of a Programming Language
- Programming Paradigms
- What is Java
- The Object-Oriented Paradigm and Java
Writing Java Programs
- What is a Java Program
- Writing the Source Code
- Compiling the Source Code
- Running the Compiled Code
- Installing and configuring Eclipse IDE
- Downloading and Installing Maven
- Testing Maven Installation
Data Types
- What is a Data Types
- What is an Identifier
- Data Types in Java
- Primitive Data Types in Java
- Special Floating-Point Numbers
- Rounding Modes
- Number Objects
- String Objects
- Format data for output
Operators
- What is an Operator
- Assignment Operator
- Arithmetic Operators
- String Concatenation Operator
- Relational Operators
- Boolean Logical Operators
Statements
- What is a Statement and Type of Statements
- A Block Statement
- The if-else Statement
- The switch Statement
- Strings in Switch
- The for Statement
- The for-each Statement
- The while Statement
- The do-while Statement
- The break Statement
- The continue Statement
- Diamond Syntax
Day 2 - Classes and Objects, The Object and Objects Classes, Java Package, Wrapper Classes, Exception Handling, Assertions
Classes and Objects
- What is a Class
- Declaring Fields in a Class
- Creating Instances of a Class
- The null Reference Type
- Using Dot Notation to Access Fields of a Class
- Default Initialization of Fields
- Access Level Modifiers for a Class
- Import Declaration
- Declaring Methods of a Class
- Local Variables
- Instance Method and Class Method
- Invoking a Method
- Access Level for Class Members
The Object and Objects Classes
- The Object Class
- What is the Class of an Object
- Computing Hash Code of an Object
- Comparing Objects for Equality
- String Representation of an Object
- Cloning Object
- Finalizing an Object
- Immutable Objects
- The Objects Class
Java Package
- Package declaration
- Sub-Packages in Java
- Naming Convention
- Importing Java Package
- Access Modifier
- Java Archive (JAR) Files
Wrapper Classes
- Wrapper Classes
- Autoboxing and Unboxing
- Beware of Null Values
- Overloaded Methods
- Comparison Operators
- Collections
Exception Handling
- What is an Exception
- Using a try-catch Block
- Exception Class Hierarchy
- Arranging Multiple catch Blocks
- Throwing an Exception
- Creating an Exception Class
- The finally Block
- The try-with-resources Block
- Multi-Catch Exceptions
- Re-throwing Exceptions
- Try with Resources
- AutoCloseable Interface
Assertions
- What is an Assertions
- Testing Assertions
- Enabling / Disabling Assertions
- Using Assertions
- Checking for Assertion Status
Day 3 - Strings, Dates and Times, Formatting Data, Arrays, Inheritance, Interfaces, Core Collection Classes
Strings
- What is a String
- String Literals
- Creating String Objects
- String Operators
- Comparing Two Strings
- StringBuilder and StringBuffer
Dates and Times
- The Date-Time API
- Calendar Systems
- Clocks and Period Packages
- Period between Two Dates and Times
- Partials
- Formatting Dates and Times
- Parsing Dates and Times
Formatting Data
- Wrapper Classes
- Autoboxing and Unboxing
- Beware of Null Values
- Overloaded Methods
- Comparison Operators
Arrays
- What is an Array
- Arrays are Objects
- Accessing Array Elements
- Length of an Array
- Multi-Dimensional Arrays
- Enhanced for Loop for Arrays
- Runtime Array Bounds Check
Inheritance
- What is Inheritance
- The instanceof Operator
- Binding
- Method Overriding and Method Overloading
- Method Hiding and Field Hiding
- Disabling Inheritance
Interfaces
- What is an Interface
- Implementing an Interface
- Implementing Multiple Interfaces
- Interface Inheritance
- The instanceof Operator
- Marker Interfaces
- Functional Interfaces
- Polymorphism – One Object, May Views
- Dynamic Binding and Interfaces
Core Collection Classes
- The Collections Framework
- The Set Interface
- Set Implementation Classes
- The List Interface
- List Implementation Classes
- The Map Interface
- Map Implementation Classes
Day 4 - Pluggable Annotation Processing API, Java API for XML Based Web Services – 2.0, JDBC 4.0, Lambda Expressions, Java Stream API for Bulk Data Operations on Collections, Java Date / Time API, Concurrency API improvements, Reflection
Pluggable Annotation Processing API
- Common Annotations and Role Based Annotations
- @Generated
- @Resource
- @Resources
- @PostConstruct
- @PreDestroy
- @DeclareRoles
- @RolesAllowed
- @PermitAll
- @DenyAll
Java API for XML Based Web Services – 2.0
- JAXB 2.0
- Web Services Metadata
- Streaming API for XML
- XML Digital Signature
- Java Class File Specification Update
- Java Compiler API
JDBC 4.0
- Setting up MySQL Database
- Auto loading of Driver by JVM
- Standard Connection Factory Management
- Enhanced Connection and Statement Interface
- Inserting Data
- New interface RowID to support the ROWID data type
- Updating Data
- Deleting Data
- Use of Annotated SQL queries
- Creating prepared statements
- Calling stored procedure
Lambda Expressions
- Single method Interface
- Anonymous Interface Implementation
- Lambda Type Inference
- Lambda Parameters
- Lambda Function Body
- Returning a Value
- Lambdas as Objects
- Variable Capture
- Method References as Lambdas
Java Stream API for Bulk Data Operations on Collections
- Introduction
- Stream Creation
- Referencing a Stream
- Stream Pipeline
- Lazy Invocation
- Order of Execution
- Stream Reduction
- Parallel Streams
Java Date / Time API
- Issues with existing Date / Time APIs
- LocalDate, LocalTime and LocalDateTime
- Using ZonedDateTime API
- Using Period and Duration
- Compatibility with Date and Calendar
- Date and Time Formatting
Concurrency API improvements
- The Concurrency API
- Semaphore and Other Synchronizers
- Concurrent Collections
- Atomic Operations
- Executor and ExecutorService
- Thread Pools
- Parallel Processing
Reflection
- Uses for Meta-Data
- The Reflection API
- The Class
Class - The java.lang.reflect Package
- Reading Type Information
- Navigating Inheritance Trees
- Dynamic Instantiation
- Dynamic Invocation
- Reflecting on Generics
Day 5 - Getting Started With Maven, Commonly Used Plugins, Multi-Module Builds, POM Projects, Creating Archetypes, Maven's Approach to Artifacts
Getting Started With Maven
- Terminology and Basic Concepts
- Artifacts
- Lifecycle
- Plugins
- Running Maven
- Running Maven from Eclipse
- Common Goals
- pom.xml
Commonly Used Plugins
- Maven Plugins
- Declaring and Configuring Plugins
- Running the Plugin
- Binding a Plugin Goal to the Lifecycle
- Maven Surefire Test Plugin
- Failsafe Plugin
- Site Plugin
- JavaDoc Plugin
- PMD Plugin
Multi-Module Builds
- Introduction
- The Reactor
- Reactor Sorting
- Multi-Module Build by Example
POM Projects
- Project Object Model (POM)
- The overall POM structure
- Storing POM
- What is Maven Plugin
- Example of Using a Plugin
- Create a Custom Plugin
- Create a Custom Plugin (cont.)
- Plugin Management
Creating Archetypes
- Introduction to Maven Archetypes
- Introduction to Maven Archetypes (cont.)
- Using Interactive Mode to generate Goal
- Common Maven Archetypes
Maven's Approach to Artifacts
- Publishing Artifacts
- Summary of Maven's Artifact Handling
- Repository
- Repository Manager
- Proxy Remote Repositories
- Types of Artifacts
- Release Artifacts
- Snapshot Artifacts
- Reasons to Use a Repository Manager
- Repository Coordinates
- Addressing Resources in a Repository
Our Training Methodology
Practical Assignments
We provide hands-on assignments that requires practical implementation.
Virtual Coaching Sessions
Online coaching sessions that happen over the phone, via video, or on a web platform.
1 Year Access to LMS
Get access to learning resources upto 1 year of class completion.
Live Project Experience
Hands-on learning and training gives participants the opportunity to experience real world situations.
Online Assessments
Participants can assess reflect on their own learning and their level/skills.
Free Industry Webinars
Stay current on market research trends, learn best practices through our webinar sessions.
Your Instructor
Thayanithy Jegan
CTO & Co-Founder of Thulija Technologies,
Certified Trainer and Consultant
Certified Trainer and Consultant
A seasoned technology professional with over 17 years of industry experience as a software developer, solutions architect and technology consultant for major organizations.
Thayanithy Jegan has trained executives and developers in companies such as Maxis, IFCA, SWIFT, PSDC, DHL, Standard Chartered, Infineon Technologies, Siemens and Bank Negara to name a few to break into various technology stacks and as well as data science, big data, and artificial intelligence.
He has led major projects with clients such as Suruhanjaya Syarikat Malaysia (SSM), MYCOID, Kementerian Kerja Raya, Ministry of Education (MOE), Universiti Malaya, Perfisio Solutions, Kementerian Perdagangan Antarabangsa dan Industri, amongst others. He has also served as a Consultant for MIMOS Berhad, a Research and Development organisation that functions as an advisor to the Malaysian Government on technologies, policies and strategies relating to IT.
Program Key Highlights
40 hours of Remote Online Learning
80 Additional Self Learning Hours
12 Live Hands-on Projects
Certified by International Body
Mentorship with Industry Experts
Designed for Beginners & Professionals
Request For Information
Get Professionally Certified
Upon successfully completing this program, participants will be awarded the Professional Certification in Python Data Science by International Council for Technology Certifications (ICTC).
This award is a validation to the efforts taken to master the domain expertise that will set you apart from your competition.
Be a part of the global network of data science professionals and join the community across sectors.
Get in Touch With Us Today!
This training program is suitable for anyone who intends to enter into the field of Software Development. This program is being conducted in Malaysia and can be joined by anyone, anywhere in the world remotely.
Program Fee
RM 3,700.00
One-time fee. One year access to course materials.
READY TO KICKSTART YOUR CAREER?
Please fill in the form and a Program Advisor will reach out to you. You can also reach out to us at info@thulija.com or +60123661502
Contact us on Whatsapp for more enquiries