Sela

Java Programming

Description
This course introduces the participant to the fascinating and dynamic world of Java Object Oriented programming. The first part of the course focuses on object-based concepts. We begin by exploring the history and origins of the Java programming language. From there, we go on to understanding the structure of the Java platform by focusing on its ability to write and compile only once, and still run on various machines using different Java Virtual Machines (JVM). The Object Oriented part of the course goes through inheritance concepts and implementations, the collections framework, handling exceptions and running multiple threads applications. We conclude the course by delving into the IO capabilities of Java as well as their usage in networking.
Intended audience
This course is intended for: Skilled Programmers. Team leaders. For non object oriented developers there is an extra day

Topics

Introduction to Object Oriented Programming
The Object-Based model:
The Object Oriented Paradigm
History
Key Features
Java platform independence
Byte Code
JVM
Java API
Java memory model
Garbage collector
Classes
Compiling and running
Data types
Strings and StringBuffers
Arrays
Operators
Conditional Statements
loops
packaging and compiling
Referencing and Instantiation
Object members and methods
Constructors
Class members and methods
The Final keyword
Access control
Inner Classes
The java.lang.Object class
Polymorphism – Overloading and Overriding.
Casting and safe casting
Final classes and methods
Abstract classes and methods
Interfaces
The collection framework classes
Iterator
List and implementations
Set and implementations
Sorting issues (Comparator and Comparable).
Map and implementations
Read-only and synchronized collections
Historical implementations
Generics
Additional issues - appendix
Exceptions vs. traditional error handling.
Exceptions terminology
Errors and exceptions
Available methods
Nesting blocks
The finally block
Creating user-defined exceptions
Threads overview
Creating threads in Java
The thread life cycle
Naming threads
The Timer and TimerTask classes
Synchronization overview
Synchronized blocks
Synchronized methods
Synchronized class methods
Cooperation using wait() and notify()
Priorities - appendix
Deadlocks - appendix
Daemon threads - appendix
I/O overview
Binary Streams
FileInputStream/FileOutputStream
Working with buffers
RandomAccessFile
Character streams
Console IO
The java.io.File class
Serialization
Scanner - Appendix
The Internet Protocol
Transmission Control Protocol
Domain Name System
Ports
Sockets
The Server side
The Client side
The Java Networking Model
Communication using streams
Multiple clients
Proxy and firewall - Appendix
Other types of socket - Appendix

רוצה לדבר עם יועץ?

האם אתה בטוח שאתה רוצה לסגור את הטופס ולאבד את כל השינויים?