Are you new to programming? Then learn Java from this PDF. It is a supplement to the free video course, complete with images, diagrams, problem statements, coding exercises and solutions.
https://aleftavtraining.siterubix.com/
2. Learn programming the easy way, by
using the worldâs most popular language
to:
⢠Discover anyone can code in Java
⢠Write your own programs
⢠Be in demand world-wide
⢠Do Android coding
2 Marius Claassen, 2017
3. About me
Marius Claassen, Java Developer and Teacher
I am a self-taught java developer. Having been a teacher for many
years, I am now working full-time as an independent software
instructor, making video tutorials. At the time of making these Java
tutorials, I am living in South Africa.
3 Marius Claassen, 2017
4. Benefits
⢠Read Java code
⢠Develop basic Java applications
⢠Devise solutions when given a
problem statement
4 Marius Claassen, 2017
9. To buy this course:
⢠mariusclaassen@gmail.com
or
⢠https://www.udemy.com/java-8-for-complete-beginners/learn/v4/overview
9 Marius Claassen, 2017
48. Lecture 4: Hello world example
Hello world problem statement:
Print âhello worldâ
48 Marius Claassen, 2017
49. Lecture 4: Hello world example
public class Lecture4 {
public static void main(String[] args) {
System.out.print(âhello worldâ);
}
}
// hello world
49 Marius Claassen, 2017
50. Lecture 4: First coding exercise
Replace the comment with a statement to
print the name, âAdamâ.
50 Marius Claassen, 2017
51. Lecture 5: First exercise solution
public class Lecture5 {
public void printAdam() {
System.out.print(âAdamâ);
}
}
51 Marius Claassen, 2017
53. Lecture 6: Primitives declaration
int intValue;
double doubleValue;
char charValue;
boolean booleanValue;
00.0
F
â0â
53 Marius Claassen, 2017
00
54. Lecture 6: Primitives
⢠byte, short, int, long
⢠float, double
⢠boolean
⢠char
54 Marius Claassen, 2017
55. Lecture 6: Declaration example
Declaration problem statement:
Declare Javaâs 8 primitive data types
55 Marius Claassen, 2017
56. Lecture 6: Declaration example
public class Lecture6 {
public static void main(String[] args) {
int intValue; // Declaration
}
}
56 Marius Claassen, 2017
57. Lecture 6: Declaration exercise
Replace the comment with a statement to
declare a âcharâ data type, named âletterYâ.
57 Marius Claassen, 2017
58. Lecture 7: Primitives solution
public class Lecture7 {
public void declareLetterY() {
char letterY; // Declaration
}
}
58 Marius Claassen, 2017
60. int intValue = 900; // Initialization
char charValue = âaâ; // Initialization
60 Marius Claassen, 2017
900
âaâ
61. Lecture 8: Initialization example
Initialization problem statement:
Initialize an int data type named âintValueâ
with the number 900.
61 Marius Claassen, 2017
62. Lecture 8: Initialization example
public class Lecture8 {
public static void main(String[] args) {
int intValue = 900; // Declare and Initialize
}
}
62 Marius Claassen, 2017
63. Lecture 8: Initialization exercise
Initialize a char data type, named âletterYâ
with the value, âYâ.
63 Marius Claassen, 2017
64. Lecture 9: Initialization solution
public class Lecture9 {
public void setLetterY() {
char letterY = âYâ; // Declare and Initialize
}
}
64 Marius Claassen, 2017
65. Lecture 10: Operators example
Operators problem statement:
Assign â11 * 18â to a âshortâ data type named
âanswer1â.
65 Marius Claassen, 2017
66. Lecture 10: Operators example
public class Lecture10 {
public static void main(String[] args) {
short answer1 = 11 * 18;
}
}
66 Marius Claassen, 2017
67. Lecture 10: Java operators
⢠short answer1 = 11 * 18; // Multiply
⢠int answer2 = 15 % 4; // Remainder
⢠double answer3 = 12.0 + 9.0; // Add
⢠boolean answer4 = 36 < 35; // Less than
67 Marius Claassen, 2017
68. Lecture 10: Operators exercise
Assign â40 â 13â to a âbyteâ data type named
âanswer5â
68 Marius Claassen, 2017
69. Lecture 11: Java operators solution
public class Lecture11 {
public void setAnswer5() {
byte answer5 = 40 - 13;
}
}
69 Marius Claassen, 2017
70. Lecture 12: Reference data types
700
70 Marius Claassen, 2017
mySignOff âKeep codingâ
String mySignOff = âKeep codingâ;
int myNumber = 700;
71. Lecture 12: References example
References problem statement:
Declare a String named, âmySignOffâ
initialized as âKeep codingâ
71 Marius Claassen, 2017
72. Lecture 12: References example
public class Lecture12 {
public static void main(String[] args) {
String mySignOff = âKeep codingâ;
}
}
72 Marius Claassen, 2017
73. Lecture 12: References exercise
Declare a String named, âwordsâ initialized
as, âIn the beginningâ.
73 Marius Claassen, 2017
74. Lecture 13: References solution
public class Lecture13 {
public void setWords() {
String words = âIn the beginningâ;
}
}
74 Marius Claassen, 2017
75. Lecture 14: Scanner class example
Scanner class problem statement:
Write code to have Java ask for your name
75 Marius Claassen, 2017
76. Lecture 14: Scanner class example
public class Lecture14 {
public static void main(String[] args) {
System.out.print(âWhat is your name? â);
Scanner scanner1 = new Scanner(System.in);
String name = scanner1.next();
System.out.print(âYour name is â + name);
}
}
76 Marius Claassen, 2017
77. Lecture 14: Scanner class exercise
Declare and initialize a String named
âlanguageâ as âscanner1.next()â
77 Marius Claassen, 2017
78. Lecture 15: Scanner class solution
public class Lecture15 {
public String getLanguage() {
System.out.print(âWhich programming language is the
most widely used? â);
Scanner scanner1 = new Scanner(System.in);
String language = scanner1.next();
return language;
}
}
78 Marius Claassen, 2017
80. Lecture 16: Conditionals &&, ||
âJâ
80 Marius Claassen, 2017
char charJ = âJâ;
char charK = âKâ
if ( (charJ == âJâ) && (charK == âKâ) ) {
âKâ
System.out.print( âcharJ is J and charK is Kâ);
}
81. Lecture 16: Conditionals &&, ||
Conditional operators problem statement:
Implement the â&&â operator where charJ =
âJâ and charK = âKâ and print âcharJ is J AND
charK is Kâ.
81 Marius Claassen, 2017
82. Lecture 16: Conditionals &&, ||
public class Lecture16 {
public static void main(String[] args) {
char charJ = âJâ; char charK = âKâ;
if ( (charJ == âJâ ) && (charK == âKâ) ) {
System.out.print(â charJ is âJâ AND charK is âKâ â );
}
}
}
82 Marius Claassen, 2017
83. Lecture 16: Conditionals exercise
Implement the â||â operator with
âevenNumberâ as 8 or âoddNumberâ as 12
83 Marius Claassen, 2017
84. Lecture 17: Conditionals solution
public class Lecture17 {
public static void main(String[] args) {
int evenNumber = 8; int oddNumber = 9;
if ( (evenNumber == 8) || (oddNumber == 12) )
{
System.out.print(âevenNumber is 8 OR oddNumber is 12â);
}
}
}84 Marius Claassen, 2017
85. Lecture 18: If-then example
85 Marius Claassen, 2017
21 and 21 âEqualâ
if num6 is equal to num7 then print they are equal
87. Lecture 18: If-then-else example
87 Marius Claassen, 2017
âNot equalâ
56 and 65
if num1 is equal to num2 then print they are equal,
else print they are not equal
88. Lecture 18: If-then-else example
If-then-else problem statement:
Implement âif-then-elseâ where num1 = 56 and
num2 = 65, and print whether they are equal
or not
88 Marius Claassen, 2017
89. Lecture 18: If-then-else example
public class Lecture18 {
public static void main(String[] args) {
int num1 = 56; int num2 = 65;
if (num1 == num2)
{ System.out.print(â56 is equal to 65â); }
else { System.out.print(â56 is not equal to 65â); }
}
} // 56 is not equal to 65
89 Marius Claassen, 2017
90. Lecture 18: If-then-else exercise
Implement âif-then-elseâ with testScore >= 60
90 Marius Claassen, 2017
91. Lecture 19: If-then-else solution
public class Lecture19 {
public void printIfThenElse() {
int testScore = 74; String result = âundefinedâ;
if (testScore >= 60)
{ result = âpassâ; }
else { result = âfailâ; }
System.out.print(result);
}
}
91 Marius Claassen, 2017
92. Lecture 20: Switch example
Switch problem statement:
Implement a âswitchâ statement to print
weekday 6 as âFridayâ.
92 Marius Claassen, 2017
94. Lecture 20: Switch example
94 Marius Claassen, 2017
1
2
3
4
5
6
7
âFridayâ
95. Lecture 20: Switch example
String day = â6â;
switch (day) {
case â1â : System.out.print(âSundayâ); break;
case â2â : System.out.print(âMondayâ); break;
case â3â : System.out.print(âTuesdayâ); break;
case â4â : System.out.print(âWednesdayâ); break;
case â5â : System.out.print(âThursdayâ); break;
case â6â : System.out.print(âFridayâ); break;
case â7â : System.out.print(âSaturdayâ); break;
default: System.out.print(âInvalid weekdayâ); break;
} // Friday
95 Marius Claassen, 2017
96. Lecture 20: Switch exercise
Implement a âswitchâ statement to print
calendar month 3 as âMarchâ
96 Marius Claassen, 2017
97. Lecture 21: Switch solution
String month = â3â;
switch (month) {
case â1â : System.out.print(âJanuaryâ); break;
case â2â : System.out.print(âFebruaryâ); break;
case â3â : System.out.print(âMarchâ); break;
case â4â : System.out.print(âAprilâ); break;
.
.
default: System.out.print(âInvalid monthâ); break;
}
97 Marius Claassen, 2017
98. Lecture 22: For loop example
98 Marius Claassen, 2017
Repeated action
99. Lecture 22: For loop example
99 Marius Claassen, 2017
Stop condition
100. Lecture 22: For loop example
For loop problem statement:
Implement a âforâ loop to print the five values
24 to 28.
100 Marius Claassen, 2017
101. Lecture 22: For loop example
public class Lecture22 {
public static void main(String[] args) {
for (int j = 24; j < 29; j++) {
System.out.print( j + â â);
}
}
} // 24 25 26 27 28
101 Marius Claassen, 2017
102. Lecture 22: For loop exercise
Implement a âforâ loop to print the three
values 87 to 89
102 Marius Claassen, 2017
103. Lecture 23: For loop solution
public class Lecture23 {
public void printForLoop() {
for (int j = 87; j < 89; j++) {
System.out.print( j + â â);
}
}
}
103 Marius Claassen, 2017
104. Lecture 24: While loop example
While loop problem statement:
Implement a âwhileâ loop to print the four
values, divisible by 5, from 40 to 55.
104 Marius Claassen, 2017
105. Lecture 24: While loop example
public class Lecture24 {
public static void main(String[] args) {
int j = 40;
while ( j <= 55) {
System.out.print( j + â â);
j = j + 5;
}
}
} // 40 45 50 55
105 Marius Claassen, 2017
106. Lecture 24: While loop exercise
Implement a âwhileâ loop with the control
condition <= 18
106 Marius Claassen, 2017
107. Lecture 25: While loop solution
public class Lecture25 {
public void printWhileLoop() {
int j = 9;
while ( j <= 18) {
System.out.print( j + â â);
j = j + 3;
}
}
}
107 Marius Claassen, 2017
108. Lecture 26: Do-while loop example
Do-while loop problem statement:
Implement a âdo-whileâ loop to print the 3
uppercase letters âQâ to âSâ
108 Marius Claassen, 2017
109. Lecture 26: Do-while loop example
public class Lecture26 {
public static void main(String[] args) {
char letter = âQâ;
do {
System.out.print(letter + â â);
letter++; // Increment
} while (letter <= âSâ);
}
} // Q R S
109 Marius Claassen, 2017
110. Lecture 26: Do-while exercise
Implement a âdo-whileâ loop to print the 5
letters âaâ to âeâ in reverse order
110 Marius Claassen, 2017
111. Lecture 27: Do-while loop solution
public class Lecture27 {
public void printDoWhileLoop() {
char letter = âeâ;
do {
System.out.print(letter + â â);
letter--; // Decrement
} while (letter >= âaâ);
}
}
111 Marius Claassen, 2017
115. Lecture 28: One-dimensional array
0 1 2 3 4
13.0 17.0 21.0 25.0 29.0
115 Marius Claassen, 2017
indices
array length of 5
elements
116. Lecture 28: One-dimensional array
One-dimensional array problem statement:
Implement a one-dimensional double array
and print all the values using a âforâ loop
116 Marius Claassen, 2017
117. Lecture 28: One-dimensional array
public class Lecture28 {
public static void main(String[] args) {
double[ ] numbers = {13.0, 17.0, 21.0, 25.0, 29.0};
for (double number : numbers) {
System.out.print(number + â â);
}
}
} // 13.0, 17.0, 21.0, 25.0, 29.0117 Marius Claassen, 2017
118. Lecture 28: One-D array exercise
Implement a one-dimensional integer array
named âvaluesâ, initialized with the elements
30, 31, 32 and 33
118 Marius Claassen, 2017
119. Lecture 29: One-D array solution
public class Lecture29 {
public void printOneDArray() {
int[ ] values = {30, 31, 32, 33};
for (int value : values) {
System.out.print(value + â â);
}
}
}119 Marius Claassen, 2017
121. Lecture 30: Two-D array example
0 1 2 3 4
alpha bravo charlie delta echo 0
foxtrot golf hotel india juliet 1
kilo lima mike november oscar 2
papa quebec romeo sierra tango 3
121 Marius Claassen, 2017
4 Rows
5 Columns
122. Lecture 30: Two-D array example
Two-dimensional array problem statement:
Implement a two-dimensional String array to
print the element at row 1 column 3
122 Marius Claassen, 2017
123. Lecture 30: Two-D array example
public class Lecture30 {
public static void main(String[] args) {
String[][] phoneticAlphabet = {
{âalphaâ, âbravoâ, âcharlieâ, âdeltaâ, âechoâ },
{âfoxtrotâ, âgolfâ, âhotelâ, âindiaâ, âjulietâ },
{âkiloâ, âlimaâ, âmikeâ, ânovemberâ, âoscarâ },
{âpapaâ, âquebecâ, âromeoâ, âsierraâ, âtangoâ } };
System.out.print(phoneticAlphabet[1][3]);
}
} // india
123 Marius Claassen, 2017
124. Lecture 30: Two-D array exercise
Implement a two-dimensional String array to
print the element at row 0 column 4
124 Marius Claassen, 2017
125. Lecture 31: Two-D array solution
public class Lecture31 {
public void printTwoDArray() {
String[][] countries = {
{âArgentinaâ, âArmeniaâ, âArubaâ, âAustraliaâ, âAustriaâ },
{âAzerbaijanâ, âBahamasâ, âBahrainâ, âBangladeshâ, âBarbadosâ },
{âBelarusâ, âBelgiumâ, âBelizeâ, âBeninâ, âBhutanâ } };
System.out.print(countries[0][4]);
}
}
125 Marius Claassen, 2017
130. Lecture 32: Exceptions example
Exceptions problem statement:
Implement an IllegalArgumentException to be
thrown when a String named 'theDate' is not
10 characters
130 Marius Claassen, 2017
131. Lecture 32: Exceptions example
public class Lecture32 {
public static void main(String[] args) {
String theDate = â2017-04-0â;
if (theDate.length() != 10) {
throw new IllegalArgumentException(
âDate must be 10 characters longâ);
}
}
} // Date must be 10 characters long
131 Marius Claassen, 2017
132. Lecture 32: Exceptions exercise
Implement an IllegalArgumentException to be
thrown when an int named âageâ is not a
positive number
132 Marius Claassen, 2017
133. Lecture 33: Exceptions solution
public class Lecture33 {
public static void main(String[] args) {
int age = -5;
if (age < 0) {
throw new IllegalArgumentException(
âAge must be a positive numberâ);
}
}
} // Age must be a positive number
133 Marius Claassen, 2017
135. Lecture 34: Java classes example
Java class problem statement:
Create a Java class for this lecture
135 Marius Claassen, 2017
136. Lecture 34: Java classes example
public class Lecture34 {
}
136 Marius Claassen, 2017
137. Lecture 34: Java classes exercise
Create a Java class named âcourseâ
137 Marius Claassen, 2017
138. Lecture 35: Java classes solution
public class Course {
}
138 Marius Claassen, 2017
139. Lecture 36: Java classes example
Java fields problem statement:
Declare a Java âfieldâ named
âlectureNumberâ, initialize it as 36 and print it
out
139 Marius Claassen, 2017
140. Lecture 36: Java fields example
public class Lecture36 {
public static void main(String[] args) {
int lectureNumber = 36; // field
System.out.print(lectureNumber);
}
} // 36
140 Marius Claassen, 2017
141. Lecture 36: Java fields exercise
Declare a Java boolean âfieldâ named
âisLectureCompletedâ, initialized as âtrueâ
141 Marius Claassen, 2017
142. Lecture 37: Java fields solution
public class Lecture37 {
public static void main(String[] args) {
boolean isLectureCompleted = true; // field
System.out.print(isLectureCompleted);
}
} // true
142 Marius Claassen, 2017
143. Lecture 38: Java objects example
public class Course {
}
143 Marius Claassen, 2017
144. Course course1 = new Course(); // object
144 Marius Claassen, 2017
145. Lecture 38: Java objects example
Java objects problem statement:
Create an âobjectâ named âcourse1â of
dataType âCourseâ and print its datatype
145 Marius Claassen, 2017
146. Lecture 38: Java objects example
public class Lecture38 {
public static void main(String[] args) {
Course course1 = new Course(); // object
System.out.print(course1.getClass() );
}
} // class Course
146 Marius Claassen, 2017
148. Lecture 38: Java objects exercise
Create an object named âprogram1â of
dataType âProgramâ
148 Marius Claassen, 2017
149. Lecture 39: Java objects solution
public class Lecture39 {
public static void main(String[] args) {
Program program1 = new Program(); // object
System.out.print(program1.getClass() );
}
} // class Program
149 Marius Claassen, 2017
151. Lecture 40: Java methods example
Java methods problem statement:
Declare a method named âprintSkillLevelâ
151 Marius Claassen, 2017
152. Lecture 40: Java methods example
public class Lecture40 {
public static void main(String[] args) {
Course course1 = new Course();
course1.printSkillLevel();
}
} // This course is for Java beginners
152 Marius Claassen, 2017
153. Lecture 40: Java methods example
public class Course {
public void printSkillLevel() { // method
System.out.print(âThis course is for Java beginnersâ);
}
}
153 Marius Claassen, 2017
154. Lecture 40: Java methods exercise
Declare a method named
âprintNumberOfCodingExercisesâ
154 Marius Claassen, 2017
155. Lecture 41: Java methods solution
public class Lecture41 {
public static void main(String[] args) {
Course course1 = new Course();
course1.printNumberOfCodingExercises();
}
} // This course has 24 coding exercises
155 Marius Claassen, 2017
156. public class Course {
void printNumberOfCodingExercises() { // method
System.out.print(âThis course has 24 coding exercisesâ);
}
}
156 Marius Claassen, 2017
157. Lecture 42: Parameters example
157 Marius Claassen, 2017
public void setJavaVersion(String version) {
}
158. Lecture 42: Parameters example
Parameters problem statement:
Implement a method, âsetJavaVersionâ that
receives one parameter, a String named
âversionâ
158 Marius Claassen, 2017
159. Lecture 42: Parameters example
public class Lecture42 {
public static void main(String[] args) {
Course course1 = new Course(); // object
course1.setJavaVersion(âJava 8â);
}
} // Java 8
159 Marius Claassen, 2017
160. public class Course {
public void setJavaVersion(String version) { // parameter
System.out.print(version);
}
}
160 Marius Claassen, 2017
161. Lecture 42: Parameters exercise
Implement a method, âsetStudentLocationsâ
that receives one parameter, a String named
âlocationsâ
161 Marius Claassen, 2017
162. Lecture 43: Parameters solution
public class Lecture43 {
public static void main(String[] args) {
Course course1 = new Course(); // object
course1.setStudentLocations(âworldwideâ);
}
} // worldwide
162 Marius Claassen, 2017
163. public class Course {
public void setStudentLocations(String locations) {
System.out.print(locations);
}
}
163 Marius Claassen, 2017
164. Lecture 44: Method overloading
public void printCoursePrice (String value) {
}
public void printCoursePrice(int number) {
}
164 Marius Claassen, 2017
165. Lecture 44: Method overloading
Method overloading problem statement:
Implement method overloading, with 2
methods named âprintCoursePriceâ. The one
method receives a String parameter and the
other an int parameter.
165 Marius Claassen, 2017
166. Lecture 44: Method overloading
public class Lecture44 {
public static void main(String[] args) {
Course course1 = new Course();
course1.printCoursePrice(âtwo hundred â);
course1.printCoursePrice(200);
}
} // two hundred 200
166 Marius Claassen, 2017
167. public class Course {
public void printCoursePrice(String value) {
System.out.print(value); }
public void printCoursePrice( int number) {
System.out.print(number); }
}
167 Marius Claassen, 2017
168. Lecture 44: Overloading exercise
Implement method overloading, with 2
methods named âprintNumberOfLecturesâ.
The one method receives an int parameter
and the other a String parameter.
168 Marius Claassen, 2017
169. Lecture 45: Overloading solution
public class Lecture45 {
public static void main(String[] args) {
Course course1 = new Course();
course1.printNumberOfLectures(54);
course1.printNumberOfLectures(â fifty fourâ);
}
} // 54 fifty four
169 Marius Claassen, 2017
170. public class Course {
public void printNumberOfLectures(int number) {
System.out.print(number); }
public void printNumberOfLectures(String value) {
System.out.print(value); }
}
170 Marius Claassen, 2017
171. Lecture 46: Static modifier example
Static modifier problem statement:
Implement the âstaticâ modifier to declare a
String named âlanguageOfInstructionâ.
Initialize and print it as âEnglishâ.
171 Marius Claassen, 2017
172. Lecture 46: Static modifier example
public class Lecture46 {
public static void main(String[] args) {
Course.languageOfInstruction = âEnglishâ; // Initialization
System.out.print(Course.languageOfInstruction );
}
} // English
172 Marius Claassen, 2017
173. class Course {
static String languageOfInstruction; // Declaration
}
173 Marius Claassen, 2017
174. Lecture 46: Static modifier exercise
Implement the âstaticâ modifier to declare an
int named âcoursePriceâ.
174 Marius Claassen, 2017
175. Lecture 47: Static modifier solution
public class Lecture47 {
public static void main(String[] args) {
Course.coursePrice = 200; // Initialization
System.out.print(Course.coursePrice);
}
} // 200
175 Marius Claassen, 2017
176. Lecture 47: Static modifier solution
class Course {
static int coursePrice; // Declaration
}
176 Marius Claassen, 2017
177. Lecture 48: Anonymous classes
Anonymous classes problem statement:
Implement an âanonymousâ class by
overriding the method named
âgetCourseNameâ
177 Marius Claassen, 2017
178. Lecture 48: Anonymous classes
public class Lecture48 {
public static void main(String[] args) {
Course course1 = new Course() {
@Override public void getCourseName() {
System.out.print(âJava 8 for Complete Beginnersâ); }
} ;
course1.getCourseName();
}
} // Java 8 for Complete Beginners
178 Marius Claassen, 2017
179. Lecture 48: Anonymous classes
public class Course {
public void getCourseName() {
System.out.print(âJava for allâ);
}
}
179 Marius Claassen, 2017
180. Lecture 48: Anonymous classes
Implement an âanonymousâ class by
overriding the method named âisLiveâ
180 Marius Claassen, 2017
181. Lecture 49: Anonymous classes
public class Lecture49 {
public static void main(String[] args) {
Course course1 = new Course() {
@Override public void isLive() {
System.out.print(âJava 8 for Complete Beginners is liveâ); }
} ;
course1.isLive();
}
} // Java 8 for Complete Beginners is live
181 Marius Claassen, 2017
182. Lecture 49: Anonymous classes
public class Course {
public void isLive() {
System.out.print(âThe course is liveâ);
}
}
182 Marius Claassen, 2017
183. Lecture 50: Inheritance example
Inheritance problem statement:
Implement âinheritanceâ with the child class
named âJavaCourseâ.
183 Marius Claassen, 2017
184. Lecture 50: Inheritance example
public class Lecture50 {
public static void main(String[] args) {
Course course1 = new Course(); // parent object
course1.learn();
JavaCourse javaCourse1 = new JavaCourse(); // child object
javaCourse1.learn();
}
} // Learning in general
// Studying Java
184 Marius Claassen, 2017
185. public class Course {
public void learn() {
System.out.print(âLearning in generalnâ);
}
}
185 Marius Claassen, 2017
186. public class JavaCourse extends Course { // Inheritance
@Override public void learn() {
System.out.print(âStudying Javaâ);
}
}
186 Marius Claassen, 2017
187. Lecture 50: Inheritance exercise
Implement âinheritanceâ with the child class
named âProgrammingâ
187 Marius Claassen, 2017
188. Lecture 51: Inheritance solution
public class Lecture51 {
public static void main(String[] args) {
Software software1 = new Software(); // parent object
software1.solveProblems();
Programming programming1 = new Programming(); // child object
programming1.solveProblems();
}
} // General software solutions Programming solutions
188 Marius Claassen, 2017
189. public class Software {
public void solveProblems() {
System.out.print(âSoftware solutions â);
}
}
189 Marius Claassen, 2017
190. public class Programming extends Software {
@Override public void solveProblems() {
System.out.print(âProgramming solutionsâ);
}
}
190 Marius Claassen, 2017
191. Lecture 52: Polymorphism example
Polymorphism problem statement:
Implement âpolymorphismâ by creating a child
object with a parent class as dataType
191 Marius Claassen, 2017
192. Lecture 52: Polymorphism example
public class Lecture52 {
public static void main(String[] args) {
Programming programming1 = new Programming(); // parent object
programming1.printDesription();
Programming programming2 = new Java(); // child object
programming2.printDescription();
}
} // Programming is writing software
// Java is object-oriented
192 Marius Claassen, 2017
193. public class Programming {
public void printDescription() {
System.out.print(âProgramming is writing softwarenâ);
}
}
193 Marius Claassen, 2017
194. public class Java extends Programming {
@Override public void printDescription() {
System.out.print(âJava is object-orientedâ);
}
}
194 Marius Claassen, 2017
195. Lecture 52: Polymorphism exercise
Implement âpolymorphismâ by creating a child
object, âcoding2â with a parent class,
âCodingâ as dataType
195 Marius Claassen, 2017
196. Lecture 53: Polymorphism solution
public class Lecture53 {
public static void main(String[] args) {
Coding coding2 = new Java8(); // child object
coding2.printDesription();
}
} // Java 8 codes functional style
196 Marius Claassen, 2017
197. public class Coding {
public void printDescription() {
}
}
197 Marius Claassen, 2017
198. public class Java8 extends Coding {
@Override public void printDescription() {
System.out.print(âJava 8 codes functional styleâ);
}
}
198 Marius Claassen, 2017
200. Lecture 54: Project 1
MathIQ.java
Write a program that asks the user to enter
the numbers, 8 and 2. The program must
then perform three calculations and print out
as answer the three values as follows:
â16106â.
Example: 8 + 2 = 16106
200 Marius Claassen, 2017
201. Lecture 54: Project 2
BMI.java
Write a program that asks the user for their
âweightâ and âheightâ. The program must then
calculate the userâs body mass index (BMI).
Based on this BMI the program must print out
if the user is âunderweightâ, ânormal weightâ,
or âobeseâ.
201 Marius Claassen, 2017
202. Lecture 54: Project 3
CompanyX.java
Write a program for CompanyX to calculate how
much to pay the company's hourly workers. The
national Department of Labour requires that
workers be paid 1.5 times for any hours more than
40 that they work in a week. Furthermore, it is a
legal requirement that hourly workers be paid a
minimum of $10.00 per hour. CompanyX requires
that workers should work for a maximum of 50
hours in a week.
202 Marius Claassen, 2017
203. Lecture 54: Project 4
FizzBuzz.java
Write a method that prints all numbers between 1
and n, replacing multiples of 3 with the String
âFizzâ, multiples of 5 with âBuzzâ, and multiples of
15 with âFizzBuzzâ.
203 Marius Claassen, 2017
204. To buy this course:
⢠mariusclaassen@gmail.com
or
⢠https://www.udemy.com/java-8-for-complete-beginners/learn/v4/overview
204 Marius Claassen, 2017