Java Programming  Course

Java is one of the most popular programming languages in the world, and is used by thousands of companies. This course will teach you the fundamentals of the Java language, so that you can write Java programs or maintain existing Java code. It is also the foundation for learning other Java technologies, like EJB, JSP, Android and Spring.

"Brilliant course taught by someone who enjoys teaching and is very knowledgeable."

R. Murphy, Altech Netstar   (Lecturer: Lewis)

"Very impressed, very professional course, facilities and employees."

M. Delport, GEW Technologies   (Lecturer: Lewis)

"Lewis is extremely knowledgeable in his field and was able to explain concepts at the level of detail I required."

S. Dladla, DetNet SA   (Lecturer: Lewis)

Do you need a quote? Want to discuss your requirements? We promise to get back to you within 1 working day.

Fields marked with * are required.

Please enter your name

Please enter your surname

Please enter a valid phone number eg. 0126662020

Please enter a valid email address

Incus Data does not sell or otherwise distribute email addresses. We will not divulge your personal information to anyone unless specifically authorised by you.

Audience: Is This The Right Course For Me?

You should attend the Java Programming course if:

  • You are a programmer and you want to learn the Java language.
  • You need to support existing Java systems.
  • You need to understand Java so that you can learn other Java-based technologies.
  • You have already learnt some Java - perhaps on your own or at university - but struggle with some concepts or have gaps in your knowledge.

Prerequisites: Am I Ready For The Course?

Before you attend the Java Programming course:

  • You must already be a programmer and have experience in programming.
  • If you are a mainframe programmer, please consider first attending our Object-Oriented Analysis and Design Course. It will make your move to Java faster and easier.
  • You should know how to use the command line for simple instructions.

Please ensure you meet the prerequisites for this course before you attend. Read the importance of course prerequisites to understand why this is necessary.

If you are not sure which is the right course for you, please call us. We will be happy to advise you, based on your training goals and your experience.

Objectives: What Will I Learn?

After you have completed the Java Programming course, you will be able to:

  • Understand basic concepts of object orientation and how they apply to Java.
  • Write your own Java programs.
  • Read and maintain Java programs.
  • Debug Java code to find and correct mistakes.

Download the Java Programming course contents in PDF format

Technical Contents: What Does The Course Cover?

  • Java language history.
  • Portability and the Java Virtual Machine.
  • The Java development environment and tools.
OO Concepts
  • Object-oriented vs structured programming.
  • Classes, attributes, behaviours.
  • Data encapsulation.
  • Inheritance and code reuse.
  • Polymorphism.
  • Abstract classes and interfaces.
Applets and Applications
  • Applets vs applications.
  • Creating console-based Java applications and simple applets.
  • Keywords, identifiers and literals.
  • Primitive and object reference data types.
  • Variable declarations, initialization and scope.
  • Expressions, operators and operator precedence.
  • Selection and iteration statements.
  • Exception handling.
  • Modifiers.
Classes, Interfaces and Packages
  • Creating and using classes.
  • Encapsulation - fields and methods.
  • Constructors and initializers.
  • Polymorphism - overloading and overriding.
  • Inheritance - subclasses and superclasses.
  • Abstract classes and interfaces.
  • Canonical classes and JavaBeans.
  • Inner classes.
  • Packages.
Strings, Arrays and Collections
  • String methods and concatenation.
  • Strings versus StringBuffers.
  • Creating, initializing and using arrays.
  • Collections API overview.
Threads and Multi-tasking
  • Multi-tasking overview.
  • Using and creating threads.
  • The Runnable interface.
  • Thread attributes, priorities and synchronization.
File Input/Output and JDBC
  • Standard System streams.
  • Files, Streams, Readers and Writers.
  • The Serializable interface and the transient modifier.
  • JDBC Overview.
New Language Features in Java 5 and Java 7
  • Java 5 features - annotations, generics, enums, enhanced for loop, auto-boxing/unboxing, varargs, static imports.
  • Java 7 features - binary literals, try-with-resources, type inference, strings in switches.

Testimonials: What Other Delegates Say About This Course

"After this course I understand some concepts that I have been battling with for years."

J. Rapp, TrustLink   (Lecturer: Lewis)

"Lectures given with great energy, excellent knowledge of the topic and how it compares to the backgrounds that students have come from which was very helpful."

H. Hendey, Discovery   (Lecturer: Lewis)

"Absolutely fantastic! Great learning environment and lecturer."

L. Pillay, Private   (Lecturer: Lewis)

"Learnt a lot of the concepts and filled in a lot of blanks and questions I had."

R. Nortje, Starke Ayres   (Lecturer: Lewis)

"A good overview of core Java concepts."

P. Jacobs, Private   (Lecturer: Lewis)

"My overview of programming concepts and design patterns were heightened. I just want to thank the instructor for the knowledge transfer."

W. Tobosi, OpenCollab   (Lecturer: Lewis)

"Very relevant discussions in class"

K. Smit, BMW   (Lecturer: Lewis)

"The course is well prepared. It actually helped me to understand OOP. The exercises also made me to understand most of the concepts that I did not know."

I. Mathebula, Armscor   (Lecturer: Lewis)

"Lecturer is very well prepared on the course."

J. Haroon Olideen, Private   (Lecturer: Lewis)

"Very engaging and highlights life lessons, very practical"

M. Mwanda, Standard Bank   (Lecturer: Lewis)

"Excellent lecturing."

S. Motaung, Standard Bank   (Lecturer: Lewis)

"A great introduction to Java programming. I found this course very informative."

C. Smythe, Atio Corporation   (Lecturer: Lewis)

"Now it feels like I can start doing my own exercises. I believe this course to have covered a lot of gaps that I had before this class. I was very well impressed with the structure and contents covered."

L. Mpefa, Investec   (Lecturer: Lewis)

"Lewis is an excellent lecturer. He answered all my questions and provided valid examples that I could follow."

F. Fayard, RMB   (Lecturer: Lewis)

"Lecturer was very good, very patient in dealing with the course. I will recommend this course to any one willing to have an indepth knowledge in Java programming."

V. Aromeh, Private   (Lecturer: Lewis)

"Very well presented and interesting."

R. Davies, Denel Aviation   (Lecturer: Lewis)

"Enjoyed every day of the course. Additional information on OOD and other course background added to the quality of course. Lecturer great!"

C. Ooshuizen, Denel Aviation   (Lecturer: Lewis)

"Informative & Interesting"

M. Molefe, SITA   (Lecturer: Lewis)

"Enjoyed every detail, it closed up lot of gaps in my Java career and I will love to do the advanced course."

B. Ndlovhu, SITA   (Lecturer: Lewis)

"The lecturer was helpful and very patient and was also willing to explain further by providing us with practical explanations."

N. Feleza, Standard Bank   (Lecturer: Lewis)

"Well-structured and highly informative."

M. Mangena, Altech Netstar   (Lecturer: Lewis)

"Very good, will come back if I get the opportunity and will recommend it to my peers."

S. Smith, Altech Netstar   (Lecturer: Lewis)

"Thanks. Very good. Learned a lot."

C. Bosch, Discovery Health   (Lecturer: Lewis)

"Awesome and mindblowing."

M. Le Roux, Momentum   (Lecturer: Lewis)

"The lecturer was very good and explained all the contents very well. He delivered the course content in an exceptional manner."

P. Molokomme, Standard Bank   (Lecturer: Lewis)

"Brilliant learning experience where all my questions were answered."

K. Moonsamy, Net1 UEPS Technology   (Lecturer: Lewis)

"Very enjoyable course. Will recommend to other people. Learned a lot - thank you."

I. Holder, ABSA   (Lecturer: Lewis)

"Excellent course and presentation, thank you."

E. Fick, EOH   (Lecturer: Lewis)

"Really excellent!! A really good programming foundation is presented."

C. du Toit, SAAB Avitronic   (Lecturer: Lewis)

"I learned a lot, remembered even more and had fun doing it. The well spaced breaks helped my concentration."

N. Naydenov, Discovery Health   (Lecturer: Lewis)

"A brilliant well compiled course. Exercises were relevant to the topic covered."

C. Snyman, TrustLink   (Lecturer: Lewis)

"Lecturer is very good and an expert in his field. Will recommend him to anybody."

R. Horn, Exponant   (Lecturer: Lewis)

"Enjoyed the course. It provided me with the fundamentals in an interesting and understandable way. It triggered me to learn more about Java. The sessions presented by Lewis were excellent. I will definitely recommend Incus Data to others."

W. Kleynhans, Nedbank   (Lecturer: Lewis)

"Setting of basic principles up front - well defined. Lewis has excellent knowledge of the subject matter as well as application thereof."

L. Minnaar, University of Pretoria   (Lecturer: Lewis)

"Gave me a good insight of Java language and good overview of JEE and Web Services."

S. Beegadhur, Telkom SA   (Lecturer: Lewis)

"Was a terrific course"

S. Bhawan, ABSA   (Lecturer: Lewis)

"Would definitely come back to Incus Data for more training."

N. Faure, Nedbank   (Lecturer: Lewis)

"Well presented course and it actually gave me more energy to learn the Java language."

S. Lupuwana, BHP Billiton (Hillside)   (Lecturer: Lewis)

"Everything is perfect. The lecture is perfect. Patient and active."

T. Ramabu, TUT   (Lecturer: Lewis)

"He's amazing and I would like to come back."

S. Sediela, TUT   (Lecturer: Lewis)

"Good environment especially if you need to learn a new programming language. I can recommend this place to everyone who need to learn."

T. Raphiri, TUT   (Lecturer: Lewis)

"This was one of the best presented courses I went on. Everything was explained to me on a level that I understood. I will definitely recommend this course to my friends."

D. Nel, GijimaAST   (Lecturer: Lewis)

"Very good course. Very good lecturer. Very good venue."

P. Scheepers, ACI Worldwide   (Lecturer: Lewis)

"This is one of the best courses I have attended. Lecturer was thorough in explanations and answered questions fully. Best use of the board that I have seen!"

F. Fayard, Rand Merchant Bank   (Lecturer: Lewis)

"Lewis rocks as a lecturer. I really enjoyed it and was very impressed with his tech knowledge."

W. Smit, Sanlam   (Lecturer: Lewis)

"The course was well presented, it deepened/broadened my understanding of Java and I believe it is going to make me a better programmer. Also Lewis goes out of his way to make sure everything is understood and help with problems."

L. Mojozi, Sanlam   (Lecturer: Lewis)

"Lewis Coosner is a very excellent lecturer. Very friendly and he explains stuff very well."

F. Nkanyani, Sanlam   (Lecturer: Lewis)

"Very good thank you. It is not often that one attends a course where you want to stay longer and work at night on the topics discussed. It was very well presented and very informative."

L. Tebbut, ABSA   (Lecturer: Lewis)

"Brilliant course taught by someone who enjoys teaching and is very knowledgeable."

R. Murphy, Altech Netstar   (Lecturer: Lewis)

"Very impressed, very professional course, facilities and employees."

M. Delport, GEW Technologies   (Lecturer: Lewis)

"Lewis is extremely knowledgeable in his field and was able to explain concepts at the level of detail I required."

S. Dladla, DetNet SA   (Lecturer: Lewis)

Duration: 5 days. Courses are presented from 08:30 to 16:30.
Price: R11,900.00 excluding VAT per delegate.

This price includes everything that you need:

  • All course material.
  • An attendance certificate.
  • Lunch and refreshments.
  • A voucher to re-attend the course for a minimal fee within 6 months.
  • A voucher for a free competency assessment within 6 months.
All you have to bring to the course is the desire to learn.
Location: The Incus Data Training Venue in Centurion, Pretoria.

If that doesn't suit you, we also offer:

Date: Please check the course schedule for the next date.
You can also contact us at tel: (+27) 12-666-2020 or cell/WhatsApp: (+27) 76-694-7705, or email us at to find out about dates that suit you.

How Do I Book?

It's easy to book: Fill in our course enrolment form (editable PDF file) and email it to us at

After we have received your booking, we will send you a confirmation that you are booked on the course, an invoice and directions to the venue.

Tip: Most PDF readers, other than Adobe Reader, will let you save the form with the data you have entered. If you are using Adobe Reader, however, you might not be able to do this. But don't despair: when you have typed in the information, just print the file to PDF - and you'll have a completed enrolment form ready to email to us.