Java Fundamentals Training

Whether you're looking for customized in-person Java Fundamentals training for a private group or a public online Java Fundamentals class you can join, Webucator has the solution for you.

Java is an object-oriented, class-based programming language that is designed to run without having to be recompiled on all platforms that support Java. Webucator offers Java classes for those new to Java as well as classes for experienced Java programmers.

Filter and Sort

Java Fundamentals Courses

Introduction to Java Training

This Java training course is intended for students without an extensive programming background. It covers most Java syntax elements, concentrating on fundamental and universally useful elements, while providing an overview of many more advanced elements. Students will learn to write useful Java classes, applying Object-Oriented concepts such as inheritance, and create Java programs that work with these classes.

Early in the class the concept of objects is introduced so that later concepts can be discussed from the perspective of object orientation. The class files and exercises are based on Java 1.7 or higher.

Next Live Class:

Intermediate Java Programming

This course teaches programming in the Java language -- i.e. the Java Standard Edition platform. It is intended for students with previous Java experience or training, who already know the fundamentals of the Java architecture and basic procedural programming. This course provides in-depth coverage of object-oriented concepts and how to apply them to Java software design and development. We then move from these basic skills into key parts of the Java SE Core API, including collections and logging, and introduces features of functional programming, new to the language as of Java 8, including functional interfaces, lambda expressions, and streams.

This revision of the course targets the Java 8 language and Core API. See our course catalog for training explicitly geared to earlier versions of Java, going back as far as J2SE 1.4.2. To read more about different versions of Java and for help deciding on which version of this course to use, see "Java Versions and Terminology Demystified".)

Students come to Java from a wide range of backgrounds, and this course is designed to be as flexible as possible over the upper end of that range. Specifically:

  • Experienced C and C++ programmers will find this course a very good fit and if anything will find that they complete it in a little less than the full five-day timeline.
  • Those with experience in languages less like Java, such as Visual Basic, ASP and other Web-scripting languages, and other pseudo-object-oriented languages may need more time in the early going, and this course covers its introductory topics in good depth and offers many optional and "challenge" labs to support this.
  • Less experienced programmers or those coming from non-structured languages -- such as COBOL, PL/1, or 4GL tools -- will probably not cover the whole course in a week, and may want to pursue an abbreviated version at a slower pace. This too is quite feasible, but this audience may also want to consider our Course 102, "Introduction to Java Programming," for a more relaxed pace through the early material.

Next Live Class:

Java Programming Training for Experienced Programmers

This Java training course is intended for students with experience in a procedural or object-oriented language. It covers most Java syntax elements, including recent additions such as Generics and AutoBoxing. In addition to the fundamental library classes that would be needed in any Java program, it also covers several other important APIs, including Collections and Streams.

The class introduces the concept of objects as one of the first topics, in order that the later concepts are covered with an OO perspective. The material is based on Java 5 and 6, but most concepts would apply in 1.4 as well.

If you are new to object-oriented programming, you should take our Introduction to Java for New Programmers class instead.

Next Live Class:

Advanced Java Programming

This course provides advanced training in developing software using the Java Platform, Standard Edition, or Java SE. It is intended for students with solid experience in structured and object-oriented Java programming, including use of the Collections API and exception handling. Generic types should be understood, at least at a basic level; the course does begin with a refresher and then a more advanced treatment of generic types.

After a quick introduction to the Java Time API, students get familiar with the I/O streams model, file handling, and object serialization, and learn to use streams to communicate over network sockets. A two-chapter unit covers multi-threaded programming and concurrency techniques. We look at dynamic typing in Java, in the Reflection API and with dynamic proxies, and understand the underpinnings of source-code annotations.

Finally, several chapters at the end of the course introduce unit-testing and test-driven-development practices. Here for the first time we introduce external libraries -- JUnit, and the Mockito dynamic-mocking library -- and the study is not entirely about technology but leans more into design and good practice.

More Java Fundamentals Courses

5-min Narrated Presentation on Java

  • History and Purpose of Java
  • Common Uses of Java
  • How Hard is it to Learn?
  • The Good and the Bad
  • The Future of Java
  • The Basic Syntax of Java

History of Java

  • Java released by Sun Microsystems in 1996
  • Immediately gained popularity due to Java Applets
  • Java 2 (version 1.2) featuring Enterprise Edition (EE) released in 1998
  • Java EE still in widespread use in web platforms

Java Is Multipurpose

  • Java SE (Standard Edition) can be applied to standalone console and GUI apps
  • Java EE can be employed to implement server-based web applications and web services
  • Java ME (Mobile Edition) can serve as a programming paradigm for Android apps

Sample Uses of Java

  • Web development (JSF, Spring, Struts)
  • Web Services (RESTful, to a lesser extent SOAP)
  • Enterprise Components (Enterprise JavaBeans)
  • Java as IoT (Internet of Things) provides a "seamless platform that runs from device to data center" according to Oracle (Oracle Technical Network, June 2014)

Java Difficulty Level

  • High-level programming language
    • Like C#, Objective-C, PHP, and JavaScript
  • Java is human readable
  • Java procedural statements based on C
  • Commonly used in programming courses

Learning Java

  • Experienced programmers can get up to speed with the basic syntax
  • Great language for object-oriented programming too
  • Comprehensive API documentation
  • New learners should learn Java 8

Java: The Good

  • Relatively straightforward to learn
  • Cross-platform
  • Excellent Core API documentation
  • Great Oracle support

Java: The Bad

  • Object-oriented programming style in Java can be challenging to learn

Java: The Future

  • Continues to grow
  • Continued support from frameworks like Spring
  • Language additions (e.g., functional programming) embrace proven development paradigms
  • Continued ease of development in developer-friendly tools like Eclipse and IntelliJ

Syntax

  • Statements and semicolons
  • Curly brackets denote scope
  • Case sensitive
  • By convention
    • Lowercase variables and method names
    • UpperCamelCase class names

Declaring Variables

String foo = "Hello, world";
int bar = 5;
double fooBar = 4.9;

Comments

//Single-line comments follow two forward slashes

/*
This is a 
	multi-line comment.
*/

Common Data Types: Strings and Characters

String a = "foo";

char b = 'b';

Common Data Types: Integers and Floats

int year = 2017;

double weight = 4.9;

Common Data Types: Booleans

boolean cool = true;

boolean dead = false;

Common Data Types: Arrays

String[] fruit = {"apple", "plum", "pear"};

Conditions

if (someThing || otherThing) {
	runFast();
}
else if (thisThing && thatThing) {
    walkSlow();
}
else {
	eatTurkey();
}

Loops

while (someThing || otherThing) {
	keepDoingThis();
	if (exhausted) {
	break;
	}
}

for (grade : grades) {
	print(grade);
}

Methods

static void say(String word, int n) {
	for (int i=0; i<n; i++) {
	System.out.println(word);
	}
}

say("Hello", 5); //say hello five times

Keep Learning Java

With a Webucator Java Class

“I have taken trainings in the past at local training schools that have instructors that were clearly not passionate about what they are teaching. Roger was very clearly knowledgeable about Java and had no trouble explaining terms or concepts that up until this training I had never heard of. I would definitely recommend this training to friends and co-workers.”

Live Online Training

The schedule below shows the next two upcoming classes for each course. For more class dates click on the course title.

CourseDatePriceRegister
Introduction to Java TrainingApr 30 - May 04, 2018$1,875.00Register
Introduction to Java TrainingJun 04 - Jun 08, 2018$1,875.00Register
Intermediate Java ProgrammingApr 30 - May 04, 2018$2,125.00Register
Intermediate Java ProgrammingMay 21 - May 25, 2018$2,125.00Register
Java Programming Training for Experienced ProgrammersApr 30 - May 04, 2018$2,125.00Register
Java Programming Training for Experienced ProgrammersJun 04 - Jun 08, 2018$2,125.00Register
Introduction to Java TestingMay 17 - May 18, 2018$950.00Register
Introduction to Java TestingJun 14 - Jun 15, 2018$950.00Register
Object-Oriented Analysis and Design (OOAD) Training with UMLApr 30 - May 04, 2018$2,125.00Register
Object-Oriented Analysis and Design (OOAD) Training with UMLJun 04 - Jun 08, 2018$2,125.00Register
Design Patterns in Java SoftwareApr 30 - May 02, 2018$1,575.00Register
Design Patterns in Java SoftwareJun 11 - Jun 13, 2018$1,575.00Register
Intermediate Java 8 Apr 30 - May 04, 2018$2,625.00Register
Intermediate Java 8 Jun 04 - Jun 08, 2018$2,625.00Register
Using Java 8's New FeaturesMay 17 - May 18, 2018$1,050.00Register
Using Java 8's New FeaturesJun 14 - Jun 15, 2018$1,050.00Register
Migrating to Java 8Apr 27 - Apr 27, 2018$425.00Register
Migrating to Java 8Jun 22 - Jun 22, 2018$425.00Register

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

98,245

Students who have taken Live Online Training

16,248

Organizations who trust Webucator for their training needs

100%

Satisfaction guarantee and retake option

9.30

Students rated our Java Fundamentals trainers 9.30 out of 10 based on 133 reviews

There is no better place online to get exceptional service and Java techniques, that apply to the real world, than here!

David Martin, Horry Telephone Cooperative, Inc.
Conway SC

The instructor's insight and corporate experience were key in my satisfaction with the course. Excellent facilitator.

Rick Lentz, ITT / IST
Annapolis Junction MD

This training was an excellent introduction into the fundamentals of Java. The instructor was very knowledgeable and experienced and was able to answer questions with the confidence that only an expert could exude. There was a lot of information to cover, but I never felt rushed or like I was falling behind.

Andy Garcia, IGT
San Francisco CA

Webucator is a very good way to learn IT related courseware. The exercises and the accompanying printed material were clear and concise. They are all professional, from the Marketing person to the Support group. The best part was that my instructor was very knowledgeable, helpful and understanding. If I am to learn something new again, I will definitely choose Webucator.

Nathalie Pante, Galena Park ISD
Humble TX

Contact Us or call 1-877-932-8228

Where We Have Trained
We've provided Java training all over North America!


  • Calgary, AB
  • Juneau, AK
  • Huntsville, AL
  • Phoenix, AZ
  • Victoria, BC
  • Alameda, CA
  • Brisbane, CA
  • Goleta, CA
  • Lake Forest, CA
  • Los Angeles, CA
  • Los Angeles, CA
  • Menlo Park, CA
  • Milpitas, CA
  • Sacramento, CA
  • San Diego, CA
  • San Jose, CA
  • Santa Clara, CA
  • Santa Cruz, CA
  • Louisville, CO
  • Hartford, CT
  • Washington, DC
  • Dover, DE
  • Orlando, FL
  • Sarasota, FL
  • Alpharetta, GA
  • Atlanta, GA
  • Marietta, GA
  • Honolulu, HI
  • Clear Lake, IA
  • Chicago, IL
  • Chicago, IL
  • Indianapolis, IN
  • Lafayette, IN
  • Wichita, KS
  • Bedford, MA
  • Boston, MA
  • Boxborough, MA
  • Framingham, MA
  • Annapolis Junction, MD
  • Hanover, MD
  • Linthicum Heights, MD
  • Augusta, ME
  • Ann Arbor, MI
  • Grand Rapids, MI
  • Lansing, MI
  • Chesterfield, MO
  • Kansas City, MO
  • Maryland Heights, MO
  • Saint Louis, MO
  • St. Louis, MO
  • Moncton, NB
  • Winston-Salem, NC
  • Bismarck, ND
  • Minot, ND
  • Omaha, NE
  • Newark, NJ
  • Titusville, NJ
  • Santa Fe, NM
  • Reno, NV
  • Albany, NY
  • Amherst, NY
  • Buffalo, NY
  • E. Syracuse, NY
  • East Syracuse, NY
  • Goshen, NY
  • Long Island City, NY
  • New York, NY
  • Port Washington, NY
  • Rochester, NY
  • Cleveland, OH
  • Columbus, OH
  • Liberty Township, OH
  • Norman, OK
  • Tulsa, OK
  • London, ON
  • Ottawa, ON
  • Toronto, ON
  • Waterloo, ON
  • Fort Washington, PA
  • Horsham, PA
  • Houston, PA
  • Jenkintown, PA
  • Norristown, PA
  • Pittsburgh, PA
  • Longueuil, QC
  • Woonsocket, RI
  • Austin, TX
  • Dallas, TX
  • Fort Worth, TX
  • Houston, TX
  • Irving, TX
  • Lantana, TX
  • Richardson, TX
  • Round Rock, TX
  • San Antonio, TX
  • Arlington, VA
  • Cedar Park, VA
  • Chesapeake, VA
  • Fairfax, VA
  • Hampton, VA
  • Winchester, VA
  • Bellevue, WA
  • Seattle, WA
  • Brookfield, WI
  • Madison, WI
  • Milwaukee, WI
  • New Berlin, WI
  • Inwood, WV