
Master Java fundamentals and object oriented programming by building classes, methods, and real-world examples. Explore operators, arrays, loops, array lists, and the iterator interface to develop practical Java applications.
Explore the core idea of object-oriented programming, where objects encapsulate data and behavior. See how Java, a class-based, object-oriented language, is in demand and versatile across many domains.
Learn to run Java in the browser with rebel.it, create a rebel, and use the editor, files, console, and settings like layout and theme.
Explore Java fundamentals in section 1, covering classes and objects. Learn to declare variables with primitive types—integers, doubles, billions, characters—and object types, strings, study object state, and implement methods.
Understand what a class is in Java, using main and bank account examples to show attributes, behaviors, and the one class per file convention.
Define objects as concrete instances of a class. Describe a class as a general category with attributes, behaviors, and a bank account example; introduce instance variables.
Explore data types in java, focusing on integers as a primitive type, declaring int variables, assigning whole numbers like 9 and -9, and understanding defaults for uninitialized variables.
Master the double data type in Java, including its default value 0.0 and how to declare it static for the main method. See how 9.9 and -0.009 affect console output.
Learn the boolean data type in Java by declaring and testing a boolean in main. Booleans default to false and must be true or false, otherwise errors occur.
Explore the char data type in Java, learn that default values are undefined no character, and see how to declare, initialize, and print single character values using single quotes.
Demystify strings in Java by treating them as object reference types, learn declaration and initialization with double quotes, and explore printing, empty strings, and how quoting converts numbers into strings.
Explore how object state in Java arises from an object's fields, using a bank account class and a constructor that sets the account holder. Create multiple objects with unique states.
Explore how Java methods serve as behaviors inside classes, with examples like calculating a score and the main method, and learn method declaration: visibility, return type, camelCase naming, and parameters.
Explore how Java classes and objects collaborate in programs. Learn primitive and object data types, including strings, variables, object state, and how methods drive program functionality.
Explore core Java topics in section 2, including visibility modifiers, constructors, parameters and arguments, assignment operators, relational operators and conditional statements, assignment versus equality, exceptions, and types of comments.
Explore visibility modifiers in Java, including public classes and constructors, private instance variables, and the use of public or private methods to control access.
Constructors are public methods named like the class, may take parameters, have no return type, and Java provides a no-parameter constructor when none is defined, enabling object creation with new.
The constructor initializes object fields in Java by accepting parameters and enforcing valid values, as shown with a bank account example where year opened must be positive.
Learn how parameters work in Java with a player class example, using a constructor that takes name and score as parameters and showing method parameters and formal versus actual arguments.
Fix common constructor mistakes in Java, such as redeclaring the data type when assigning inputs to instance variables. Demonstrate with a bank account example.
See why adding a return type to a constructor causes errors, and define a police department constructor with string address, ensuring name matches the class and has no return type.
Learn how to use an illegal argument exception to validate constructor inputs and prevent invalid question and answer data in a Java interview question class.
Explore the assignment operator in Java by assigning a string color with quotes and printing it to verify initialization, noting right-to-left evaluation and type compatibility.
Demonstrate assignment statements by showing how to assign one variable's value to another, initializing balance in USD and cash deposit in USD, with the left-hand side receiving the value.
Explain how null denotes no object for reference types in Java. Show that uninitialized reference variables default to null, unlike primitive types.
Explore operators in Java: equal, not equal, greater than, greater or equal, less than, and less than or equal; demonstrate with if statements and console output comparing x and y.
Explore how the if statement controls Java code execution, using boolean expressions and conditions to print hello world, good morning, or good afternoon based on the hour.
Master how to use a Java if statement within a constructor to validate a player name, enforce anonymous inputs, and safeguard data with a getter method.
Explore the else statement in Java, using an if-else example with current hour to print good morning or good afternoon, and understand how the else branch handles remaining conditions.
Explore how the else if statement in Java works using an online store discount example, showing how to chain conditions and print specific percent off.
Explain how assignment and equality differ in Java, showing that a single equals sign assigns a value while a double equals sign tests for equality, typically in conditional statements.
Learn how to throw IllegalArgumentException to enforce valid constructor inputs, such as if the question or answer is null, ensuring interview question objects are created only with valid data.
Explore three types of comments in Java, focusing on the single line comment syntax // and how the compiler ignores them.
Explain that a multi line comment in Java uses /* and */ to comment multiple lines, with possible asterisks and content ignored by the compiler.
Learn how to write JavaDoc comments that generate HTML documentation, including author, version, and parameter and return tags for public methods.
Explore visibility modifiers, constructors (default and custom), parameters and arguments, assignment statements and operators, relational and conditional statements, assignment vs equality, and basic comment types.
Discover how methods power Java applications, from return types and accessors to mutators and their syntax. Learn to display values, understand concatenation versus addition, and prepare debugging output.
Explore how a method in Java functions as an instruction that can take parameters and return a value, with signatures, visibility, static usage, and camel casing.
Explore how return types in Java determine what a method yields, using char and string examples, and how to fix mismatches with return statements and void.
Learn how to implement and test accessor methods in a Java game class, using get player name and get score to retrieve values and observe their default values.
Learn how mutator methods, or setters, protect private data by validating inputs in setAmountInUSD and updating the amount when valid, throwing IllegalArgumentException for negative values.
Explore console output in Java by printing to the screen with System.out, println, and print. Learn how newline behavior differs between print and println to control line breaks.
Explore string concatenation in Java by combining a display text with an integer score to print messages like your score is 10, and distinguish concatenation from addition.
Discover how concatenation and addition work in Java, and use parentheses to perform numeric addition before combining with strings, avoiding surprising results.
Learn how to define and call methods, understand return types, and use accessors and mutators with private variables. Practice console output, string concatenation, and operator precautions for debugging.
Know the basics of section 4: learn logical operators (and &&, or ||, not !), short circuit evaluation, fields and parameters, and variable types (local, static), symbolic constants for maintainability.
Explore how Java uses logical operators to combine boolean expressions, covering not, and, or, with practical examples testing X equals five and Y equals five in if statements.
Demonstrates the Java logical and operator in if statements using x and y examples and prints results to the console.
Explore logical or operator in Java using if statements with multiple conditions, such as a is equal to three or b is equal to four, and print to the console.
Explore how to use the not operator in Java to negate conditions in if statements, with practical examples showing x not equal to three.
Explore how short circuit evaluation works in Java using if statements with the and operator and the or operator, and learn how the left-hand condition may skip evaluating subsequent conditions.
Explore the differences between fields, parameters, and local variables in Java, including field persistence, parameter values, and the lifecycle of local variables.
Learn what local variables are in Java and how they live inside methods. See how parameters differ and why locals are temporary and scoped to a method.
Demonstrate how the static keyword defines class-level variables and methods in Java. Show that a single copy exists and is accessed via the class, not an instance.
Discover how symbolic constants in Java use public static final with final values, naming conventions, and practical examples like Pi, min and max bounds, and magic numbers across classes.
Review the logical operators and, or, not, and short-circuit evaluation; compare local, static, and instance variables, fields and parameters, and embrace symbolic constants to avoid magic numbers in Java.
Explore arithmetic and assignment operators, the modulus operator, and method overloading in Java section 5, then compare switch and if statements and address default cases and infinite loops.
Explore how arithmetic operators combine with assignment operators in Java to perform addition, subtraction, multiplication, and division, including short forms and int vs double behavior.
explain the modulus operator in java, which returns the remainder of division, with examples like 100 mod 3, 10 mod 3, and 8 mod 3, plus shorthand modulo assignment.
Discover how Java enables method overloading by using the same method name with different signatures, including constructors. Overload by changing count, type, or order; renaming parameters does not create overload.
Explore the switch statement in Java, learn how to test an expression with cases and breaks, and see examples using chess, checkers, and tic tac toe.
Explore the default case in a Java switch statement, using examples with player names like Bob and Alex, and understand how break affects fall-through and program flow.
Identify which data types are valid in a switch statement—integral types such as int, byte, short, long, and char—and learn why boolean and floating point values require an if statement.
Explore how Java switch statements test only equality via the implicit boolean condition and why relational checks are not allowed, with examples of errors and proper case syntax.
Learn how the while loop operates as an indefinite loop controlled by a boolean condition, counting down from ten and printing each value until the condition becomes false.
Review arithmetic and assignment operators, the modulus operator, and method overloading by parameter count, type, or order; then summarize switch statements, break, illegal types, and while loops.
Explore object interaction in java, covering abstraction and modularization, the new operator, garbage collection, string class methods, immutable strings, and primitive versus object equality.
Explore how objects collaborate in Java by applying abstraction and modularization, modeling money as a reference type and composing a bank account from modular parts.
Explore how objects create other objects in Java by using a product class and an online store that instantiates products with a constructor via the new operator.
Explore internal method calls in Java with a shopping cart class, private fields, and getters to print item names and the total cart value in USD.
Explore external method calls in Java by referencing an object and using public getters to access private fields. Instantiate objects with new and use the dot operator to invoke methods.
Explore the difference between identity and assignment in Java by contrasting primitives and reference types, showing how primitives use separate memory while objects share addresses unless created with new.
Explain how primitive variables store actual values while object variables hold memory addresses, using a balance in USD example and a game object.
Discover how object references share memory addresses in Java, and how new creates a new object, shown via a game class with constructors, setters, and getters for game pieces.
Explore garbage collection in Java by examining object references, the new operator, and how unreferenced objects are marked for garbage collection to free memory.
Learn how to use methods that return values in Java, including boolean is equal methods, returning true or false, and using these results in assignments and if statements.
Explore how to use string methods in Java, including charAt and length, to access characters by index with zero-based indexing, illustrated through practical examples.
Explore string immutability in Java, showing how strings without the new keyword share the same memory address, while using new creates a distinct object.
In Java, test primitive value equality with the == operator, but test string value equality with the string equals method, because == checks identity while equals checks value.
Explore how to test equality for non-string objects by creating a player class, validating names, and distinguishing reference equality from value equality in Java.
Learn how the this keyword in Java refers to the current object, and how to use it in constructors, setters, and getters to distinguish instance variables from parameters.
Identify and fix syntax and logic errors in Java by reading console messages, tracing variables, inserting print statements, inspecting objects, and using test driven development and unit tests.
Summarize section six topics: abstraction versus modularization, the new operator and garbage collection, string immutability and equality, this keyword, internal and external method calls, debugging, and arrays.
Explore how arrays extend collections by storing multiple values, and learn to build, get, set, use array literals, and run while loops on primitive and object arrays.
Explore how Java uses collections and arrays to organize data, including fixed-size one-dimensional arrays of 100 players, printing array contents, and memory addresses.
Learn how to get and set values in a Java int array, including default zeros, zero-based indexing, and using length minus one for the final index.
Discover how array literals in Java initialize arrays by listing values in curly braces, in contrast to new string[n], and learn to access and update branch locations by index.
Learn how to create arrays of objects in Java, initialize elements, and perform null checks to avoid errors, and throw an argument exception when needed.
Learn how to iterate through an array with a while loop by using a counter index, accessing each element, and printing values in a 0-based array.
Learn to iterate over an array of character objects in Java by using a Character class with a non-null type, getters, and a while loop to print each type.
Learn to print multiples of five from zero to 500 using a while loop. Start with an index at five and increment by five to print only multiples.
This lecture summarizes section seven, detailing arrays as fixed-size collections that hold multiple values, including declaring, initializing, and iterating primitive and object arrays with while loops.
learn the fundamentals of for loops, why we use them, and how they differ from while loops, with examples using objects, variables, and arrays, including two dimensional arrays.
Learn how for loops in Java run a fixed number of times by initializing in the header, setting the condition, and updating after each iteration, unlike while loops.
Learn how to print multiples of five up to five hundred using a for loop in Java, comparing it with a while loop and examining initialization, condition, and post body action.
Create a file class with name and size fields and validate inputs. Use a for loop on an object array of files to print each file name and size.
Learn how to use a for loop on an array literal of characters to print each alphabet element by indexing with a counter and using the counter < alphabet.length condition.
Learn how to use two dimensional arrays in Java as an array of arrays with rows and columns. Initialize with an array literal and access values by row and column.
Learn how to loop through a two dimensional array with a nested for loop in Java, iterating rows and columns and printing each value.
Review how for loops iterate over arrays and values, array literals, and object arrays, with examples like finding multiples; explain two-dimensional arrays as rows and columns and looping through cells.
Explore array lists in Java, compare them with arrays, and master key methods and the for each loop through real-life examples.
Discover how array lists in Java store objects and differ from arrays. Import java.util and use add, get, remove, and size to manage a dynamic collection.
Build a Java player class with a private ArrayList<String> of characters, initialize it in the constructor, and use add, get, and size with index checks.
Learn how the for each loop in Java iterates over a collection, like an ArrayList of environments, printing each element and looping automatically through every item.
Summarizes section nine on array lists versus arrays, unfixed versus fixed size, and common methods like remove, add, size, and get, plus for-each loop usage.
Learn object-oriented programming in the most popular programming language behind your favorite apps and websites.
Must-Know Software Developer Fundamentals Course
Java is the most in-demand and widely used programming language.
That's why we designed this absolute beginner's course on only everything you must know about Java.
Get up and running with your first object-oriented programming projects.
You'll learn all the core fundamentals you need to become a rockstar Java developer.
Start here if you have no programming experience or are coming from another programming language to learn transferable, actionable skills.
What you'll learn:
Fundamentals of object-oriented programming
Variables and data types
Control flow
Classes and objects
Methods and constructors
Concatenation
Object state
Array and ArrayList
Collections and Looping
Internal and external method calls
Identity vs equality
Importing packages
Exception handling
The Iterator class
Plus:
Mistakes to avoid
Real-life small projects
Debugging Java applications
Abstraction and modularization
With projects like:
Chess
Bank account
Generic game
And much more!
No prior experience necessary!
COURSE AUTHOR
Alexandra Kropova, Software Developer at Mammoth Interactive INC.
Alexandra Kropova is a software developer specializing in Java and JavaScript, with extensive experience in full-stack web development and app development. She has helped produce courses for Mammoth Interactive INC. since 2016.
Enroll in this intensive introduction to Java today to begin your career as a software developer.
About Mammoth Interactive
Join 700,000 students in high-quality courses featured at Harvard
Lifetime access that never expires
Project-based curriculum to superboost your portfolio
Graduation certificate for every course
Absolute beginner-friendly
20-60 hours of new content added every month
Student Reviews from the Community
"Captivating voice, easy to follow at a rapid pace, get some paper and fasten your seat-belts. I'm enjoying every second of this." PHILIP MURRAY
"100% worth the time invested." DEREK HASS
Don't wait. Start now with an amazing Udemy sale.