Deze cursus Java Programmeren behandelt de basis principes van het Java platform en de programmeertaal Java.
Op basis van op elkaar volgende oefeningen in een case study, leren de deelnemers om te programmeren met de variabelen, data types, operatoren en control flow constructies van de Java-taal.
De cursus behandelt ook de object georiënteerde begrippen zoals class, object, inheritance en polymorphism.
Er wordt aandacht besteed aan fouten en exception handling in Java en er wordt besproken hoe Java software wordt opgedeeld in packages.
De splitsing van een Java programma in verschillende subtaken door threads en de synchronisatie van deze threads is ook onderwerp van de cursus.
Nieuw geïntroduceerde kenmerken in de Java taal, zoals geparametriseerde types, generics, en het gebruik daarvan in het Collection Framework maken ook deel uit van het cursusprogramma.
Optionele modules zijn de toegang tot databases met JDBC, Java Beans en Graphical User Interfaces, GUI’s. Deze modules kunnen, indien de tijd het toelaat worden behandeld.
Deze cursus is een goede voorbereiding voor het Java 7 or Java 8 Programmer Exam Part I (1Z0-803) or (1Z1-808).
In combinatie met de cursus Advanced Java Programming bereidt deze cursus ook voor op het Java 7 Programmer examen deel II (1Z0-804).
Developers die willen beginnen met Java Programmeren of personen die Java code willen begrijpen.
Elementaire kennis van en ervaring met programmeren is vereist om aan deze cursus te kunnen deelnemen. De principes van Object Oriented Programming met Java worden toegelicht. Voorafgaande kennis hiervan is bevorderlijk voor de begripsvorming.
De theorie wordt behandeld aan de hand van presentatie slides en wordt afgewisseld met oefeningen. Demos zorgen voor een verduidelijking van de theorie.
History of Java
Java Overview
Java Editions
Java Platform
Java Community Process Java LibrariesJava Language
Java Security
Application Types Compiling Java Programs Running Java Programs Compiler and Interpreter Application Structure Garbage Collection
Java Comments Variables
Types of Variables Primitive Data Types Block Statements Operator Precedence Flow Controlif else Statements switch Statement for and while Loop do while Loop break and continue ArraysEnhanced for Loop Strings
Formatted Output
Classes and Objects Class Definition Encapsulation Access Modifiers Constructors Creating Objects Fields and Methods Using Objectsstatic Modifier
static Blocks
Object Initializers this Keyword Parameter Passing Method Overloading Variable Arguments Object References final ModifierObject Destruction
Inheritance
extends Keyword Overriding and Hiding Polymorphism
Abstract Classes Interfaces Implementing Interfaces Type Casting
Implicit Casting
Explicit Casting Cloneable Interface Cloning Objects
Error Conditions Exceptions in Java Exception Handling Syntax Exception Hierarchy Multiple Catch Clauses Multi Catch Clause
finally Clause
try with Resources Exception Information Predefined Exceptions Common Exceptions Throwing Exceptions
User Defined Exceptions Chained Exceptions Rethrowing Exceptions Stack Traces
Assertions
Java Packages
Inside Java Packages Java Standard Packages Creating Packages Importing Classes
Using Packages CLASSPATH
import static
Visibility
Packaging in JAR Runnable JARS
Multiple Threads
Benefits and Drawbacks Thread Characteristics
Java Thread Model
Thread Class
Runnable interface
Extending Thread Implementing Runnable Daemon Threads
Thread Life Cycle States Thread Alive States
Thread Class Methods Sleeping and Yielding Control Using join and interrupt Thread Priorities
Suspending and Resuming
Concurrent Method Activation Synchronization
Blocking on a Monitor
Mutual Exclusion in Java Synchronized Statement Locking and StaticsDeadlock
Condition Synchronization Using wait and notify while Loop and notifyall
Inner Classes
Types of Inner Classes Anonymous Inner Classes Inner Class Advantages Enumerations
Old Enumerations Issues Enum Types
Declaring Enums
Enums as Constant Objects Enums are Classes
Enum Methods and Fields Advantages new Enums
Object Class
Wrapper Classes Autoboxing and Unboxing Overriding equals
Math Class
Date Class
Regular Expressions Scanner Class
Process Class
Runtime Class
System Class
Locale Class
Localizing Dates Localizing Numbers Localizing Currencies Javadoc
Collection Framework Framework Branches Implementation Classes Legacy Collections Collection Interface Iterator Interface Concrete Collections List InterfaceArrayList Class LinkedList Class Adding to LinkedList Set and SortedSet NavigableSet and Map Comparable Interface Comparator Interface Map InterfaceOptional Methods Views
Generics Explained Syntax Generic Class Need for Generics Benefits of Generics Generic Class Examples Generics in Collections Generic Characteristics Type ErasureBounded Type Parameter Generics and Subtyping Inheritance Relationships WildcardsWildcards Arguments Upper Bounded Wildcards Lower Bounded Wildcards Raw Types
Generic Methods
I/O Basics
I/O Classes
Byte Stream Classes Character Stream Classes Standard I/O Streams Stream Types
Data Sink Streams Processing Streams Buffered Streams
Reading Stream from Web Data Conversion Streams Serialization
Serializable Classes Object Streams
Abstract Window Toolkit (AWT) Controls and Containers Layout Managers
Event ListenersSwing Library Window Painting Swing and Threads Java FX
Scene Graph
JDBC
JDBC Overall Architecture JDBC Drivers
JDBC URL’s
Making Connections Executing a Statement Retrieving Results JDBC-ODBC Bridge
Software Components Java Beans
Java Beans Terminology Bean Component Model Bean Event Pattern Event FiringEvent Class
Event Listener Interface Dispatching Events
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023
Cursusdagen: donderdag, 08 juni 2023 | donderdag, 15 juni 2023 | donderdag, 22 juni 2023 | donderdag, 29 juni 2023 | donderdag, 06 juli 2023