01-ch01-1-println
Download
Report
Transcript 01-ch01-1-println
Building Java Programs
Chapter 1
Lecture 1-1: Introduction; Basic Java Programs
reading: 1.1 - 1.3
self-check: #1-14
exercises: #1-4
Copyright 2009 by Pearson Education
Today’s lecture
Introduction
Syllabus and policies
What is CSE – myths debunked!
What is CSE 142
Basic Java programs
Output with println statements
Syntax and errors
String literals and escape sequences
Copyright 2009 by Pearson Education
2
Introduction
reading: 1.1
self-check: #1-4
Copyright 2009 by Pearson Education
Syllabus in a nutshell
Course website is super important and useful:
http://cs.washington.edu/142
The textbook is STRONGLY recommended
Section attendance is required
Can miss up to 2 sections and still get full credit
There is section this Thursday
Schedule exam makeups BEFORE test
5 free ‘late days’ for your homeworks
Programming lab (IPL) where TAs can answer questions
Don’t share code; obey academic integrity policy
Copyright 2009 by Pearson Education
4
Myths about CSE
CSE majors spend lives in dark offices alone writing code
CSE graduates can’t get jobs anymore
The dot-com bubble burst, out-sourcing, etc.
The only people who do well
in CSE 142 have programmed
since they were five
Related: CSE majors all look like
this guy ------->
See: http://www.cs.washington.edu/whycse
Copyright 2009 by Pearson Education
5
What is CSE?
Computer Science
Study of computation (information processing)
Automating the organization and analysis of information
Many subfields
Graphics, Computer Vision
Computational Biology
Robotics / Artificial Intelligence
Large-scale data processing
...
Writing code is a means to an end
Computer Engineering
Overlap with CS and electrical engineering
Emphasis on hardware-software integration
Copyright 2009 by Pearson Education
6
The CS job market
160,000
140,000
120,000
PhD
Master's
Bachelor's
Projected Job
Openings
100,000
80,000
60,000
40,000
20,000
Computer science
Biological science
SOURCES: Tabulated by National Science Foundation/Division of Science Resources Statistics; data from Department of Education/National Center for Education Statistics:
Integrated Postsecondary Education Data System Completions Survey
Copyright 2009 by Pearson Education
7
What is CSE 142?
CSE 142 is an introduction to programming
Creating instructions for computers
Uses a language (human-readable notation)
“CSE” is not just programming, but programming is a good
starting point
No prior programming knowledge assumed
Should know how basics of to use a computer
Should know math through Algebra I
Students with significant programming experience should not be
here – take CSE 143 instead (no special permission needed)
Copyright 2009 by Pearson Education
8
Basic Java programs with
println statements
reading: 1.2 - 1.3
self-check: #5-14
exercises: #1-4
Copyright 2009 by Pearson Education
Writing a program
program: a sequence of instructions that a computer can
understand and perform
A computer is a servant that does precisely what you tell it to do.
Must speak to your computer in a language it understands
We’re going to talk to our computer in Java
Copyright 2009 by Pearson Education
10
Java
A modern programming language
Sun Microsystems in 1995
Rich libraries
Cross-platform
Object-oriented
Taught in 142 and 143
Shows basic concepts
Good free, cross-platform tools
Industry-grade language
Copyright 2009 by Pearson Education
11
Compiling/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.
3. Run (execute) it.
output: The messages printed to the user by a program.
source code
compile
Copyright 2009 by Pearson Education
output
byte code
run
12
A 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!
This program produces
four lines of output
Copyright 2009 by Pearson Education
13
Structure of a Java program
class: a program
public class name {
public static void main(String[] args) {
statement;
statement;
method: a named group
...
of statements
statement;
}
}
statement: a command to be executed
Every executable Java program consists of a class,
that contains a method named main,
that contains the statements (commands) to be executed.
Copyright 2009 by Pearson Education
14
System.out.println
A statement that prints a line of output on the console.
pronounced "print-linn"
sometimes called a "println statement" for short
Two ways to use System.out.println :
• System.out.println("text");
Prints the given message as output.
• System.out.println();
Prints a blank line of output.
Copyright 2009 by Pearson Education
15
Names and identifiers
You must give your program a name.
public class CakeRecipe {
Naming convention: capitalize each word (e.g. MyClassName)
Your program's file must match exactly (CakeRecipe.java)
includes capitalization (Java is "case-sensitive")
identifier: A name given to an item in your program.
must start with a letter or _ or $
subsequent characters can be any of those or a number
legal: _myName
illegal: me+u
Copyright 2009 by Pearson Education
GuyBrush
49ers
ANSWER_IS_42
side-swipe
$bling$
Ph.D's
16
Keywords
keyword: An identifier that you cannot use because it
already has a reserved meaning in Java.
abstract
boolean
break
byte
case
catch
char
class
const
continue
default
do
double
else
extends
final
finally
float
for
goto
if
implements
import
instanceof
int
interface
long
native
new
package
private
protected
public
return
short
static
strictfp
super
switch
synchronized
this
throw
throws
transient
try
void
volatile
while
i.e., You may not use char or while for the name of a class.
Copyright 2009 by Pearson Education
17
Syntax
syntax: The set of legal structures and commands that can
be used in a particular language.
Every basic Java statement ends with a semicolon ;
The contents of a class or method occur between { and }
syntax error (compiler error): A problem in the structure
of a program that causes the compiler to fail.
Examples:
Missing semicolon
Too many or too few { } braces
Illegal identifier for class name
Class and file names do not match
...
Copyright 2009 by Pearson Education
18
Syntax error example
1
2
3
4
5
public class Hello {
pooblic static void main(String[] args) {
System.owt.println("Hello, world!")_
}
}
Compiler output:
Hello.java:2: <identifier> expected
pooblic static void main(String[] args) {
^
Hello.java:3: ';' expected
}
^
2 errors
The compiler shows the line number where it found the error.
The error messages can be tough to understand!
Copyright 2009 by Pearson Education
19
Strings
string: A sequence of characters to be printed.
Starts and ends with a " quote " 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."
Copyright 2009 by Pearson Education
20
Escape sequences
escape sequence: A special sequence of characters used
to represent certain special characters in a string.
\t
\n
\"
\\
tab character
new line character
quotation mark character
backslash character
Example:
System.out.println("\\hello\nhow\tare \"you\"?\\\\");
Output:
\hello
how
are "you"?\\
Copyright 2009 by Pearson Education
21
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:\the beatles\norwegian
wood.mp3");
Write a println statement to produce this output:
/ \ // \\ /// \\\
Copyright 2009 by Pearson Education
22
Answers
Output of each println statement:
a
b
c
\\
'
"""
C:
he beatles
orwegian wood.mp3
println statement to produce the line of output:
System.out.println("/ \\ // \\\\ ///
\\\\\\");
Copyright 2009 by Pearson Education
23
Questions
What println statements will generate this output?
This program prints a
quote from the Gettysburg Address.
"Four score and seven years ago,
our 'fore fathers' brought forth on
this continent a new nation."
What println statements will generate this output?
A "quoted" String is
'much' better if you learn
the rules of "escape sequences."
Also, "" represents an empty String.
Don't forget: use \" instead of " !
'' is not the same as "
Copyright 2009 by Pearson Education
24
Answers
println statements to generate the output:
System.out.println("This program prints a");
System.out.println("quote from the Gettysburg Address.");
System.out.println();
System.out.println("\"Four score and seven years ago,");
System.out.println("our 'fore fathers' brought forth on");
System.out.println("this continent a new nation.\"");
println statements to generate the output:
System.out.println("A \"quoted\" String is");
System.out.println("'much' better if you learn");
System.out.println("the rules of \"escape sequences.\"");
System.out.println();
System.out.println("Also, \"\" represents an empty String.");
System.out.println("Don't forget: use \\\" instead of \" !");
System.out.println("'' is not the same as \"");
Copyright 2009 by Pearson Education
25
Comments
comment: A note written in the source code by the
programmer to make the code easier to understand.
Comments are not executed when your program runs.
Comment, general syntax:
// <comment text, on one line>
or,
/* <comment text; may span multiple lines> */
Examples:
/* A comment goes here. */
/* It can even span
multiple lines. */
// This is a one-line comment.
Copyright 2009 by Pearson Education
26
Comments example
/* Patty Println, CS 101, Fall 2019
This program prints lyrics from my favorite song! */
public class Washington {
// The code to print the song on the console.
public static void main(String[] args) {
// first verse
System.out.println(“Washington, Washington");
System.out.println(“6 foot 8");
System.out.println(“Weighs a friendly ton");
// separate the lyrics with a blank line
System.out.println();
// second verse
System.out.println(“Opponents beware");
System.out.println(“Opponents beware");
}
}
Copyright 2009 by Pearson Education
27