Java Week 1b
Java Week 1b
1
What is computer science?
⚫ computers?
⚫ science?
⚫ programming?
⚫ late lonely nights in front of the computer?
ALGORITHMIC THINKING
al·go·rithm:
a step-by-step procedure for solving a problem or
accomplishing some end especially by a computer
2
Fields of computer science
⚫ Graphics
⚫ Computer Vision
⚫ Artificial Intelligence
⚫ Robotics
⚫ Data Mining
⚫ Natural Language Processing
⚫ User Interfaces
⚫ ...
3
What is programming?
⚫ program: A set of instructions
to be carried out by a computer.
4
Programming is like Legos…
5
6
7
Should you take this course?
⚫ No
⚫ “I hate computers.”
⚫ “I don’t pay attention to details.”
⚫ Programming is fairly detail-oriented.
⚫ “I refuse to think logically.”
⚫ “I want to take an easy class.”
⚫ Hard for those who find difficulty in logical thinking and who don’t
pay attention to details.
8
Should you take this course?
⚫ Probably not
⚫ “I want free pleasure-seeking meals and to make lots
of money by working for Google.”
⚫ “Candy Crush is awesome!”
⚫ “If I wrote WhatsApp, I would have made how many
billion dollars???”
⚫ Yes
⚫ “I have to take this class.”
⚫ Is this the only reason? Are you pursuing the
right major?
⚫ “I like to solve problems.”
⚫ “Computers and robots are going to take over the world.
I want to befriend them so that my life will be spared.”
9
Tips for Success
⚫ Visit website often: https://docs.oracle.com/javase/,
W3Schools Java Tutorial,
https://docs.oracle.com/javase/tutorial/
⚫ Read syllabus carefully
⚫ Do lots of problems on
JetBrains Academy Java Track,
Tutorialspoint Java,
https://leetcode.com/,
10
Tips for Success (cont’d)
⚫ Keep up with the assignments
⚫ The course material is cumulative
⚫ From a former student: “Procrastination will eventually
come around to bite you in the a*s!”
11
Building Java Programs
Week 1
Lecture 1-1: Introduction; Basic Java Programs
12
Your first Java program!
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
13
Running a program
1. Write it.
⚫ code or source code: The set of instructions in a program.
2. Compile it.
• compile: Translate a program from one language to another.
⚫ byte code: The Java compiler converts your code into a
format named byte code that runs on many computer
types.
14
Bigger Java program!
public class Hello {
public static void main(String[] args)
{ System.out.println("Hello, world!");
System.out.println();
System.out.println("This program produces");
System.out.println("four lines of output");
}
}
⚫ Its output:
Hello, world!
16
Names and identifiers
⚫ You must give your program a name.
17
Keywords
⚫ keyword: An identifier that you cannot use because it
already has a reserved meaning in Java.
abstract default if private this
boolean do implements protected throw
break double import public throws
byte else instanceof return transient
case extends int short try
catch final interface static void
char finally long strictfp volatile
class float native super while
const for new switch
continue goto package synchronized
• System.out.println("text");
Prints the given message as output.
• System.out.println();
Prints a blank line of output.
19
Syntax
⚫ syntax: The set of legal structures and commands that can
be used in a particular language.
⚫ The “spelling” and “grammar” of a programming language.
⚫ Every basic Java statement ends with a semicolon ;
⚫ The contents of a class or method occur between { and }
20
Syntax error example
1 public class Hello {
2 pooblic static void main(String[] args) {
3 System.owt.println("Hello, world!")_
4 }
5 }
⚫ Compiler output:
Hello.java:2: <identifier> expected
pooblic static void main(String[] args) {
^
Hello.java:3: ';' expected
}
^
2 errors
22
More on syntax errors
⚫ Java is case-sensitive
⚫ Hello and hello are not the same
compiler output:
Hello.java:1: class, interface, or enum expected
Public class Hello {
^
1 error
23
Strings and escape
sequences
24
Strings
⚫ string: A sequence of text characters.
⚫ Starts and ends with a " (quotation mark
character).
⚫ The quotes do not appear in the output.
⚫ Examples:
"hello"
"This is a string. It's very long!"
⚫ Restrictions:
⚫ May not span multiple lines.
"This is not
a legal String."
⚫ May not contain a " character.
"This is not a "legal" String either."
⚫ Example:
System.out.println("\\hello\nhow\tare \"you\"?\\\\");
⚫ Output:
\hello
how are "you"?\\
26
Questions
⚫ What is the output of the following println
statements?
System.out.println("\ta\tb\tc");
System.out.println("\\\\");
System.out.println("'");
System.out.println("\"\"\"");
System.out.println("C:\nin\the downward spiral");
27
Answers
⚫ Output of each println
statement:
\\ a b c
'
"""
C:
in he downward spiral
28
Questions
⚫ What println statements will generate this
output?
This quote is from
Irish poet Oscar
Wilde:
30