SlideShare une entreprise Scribd logo
1  sur  19
Copyright 2013 by Pearson Education
Building Java Programs
Chapter 1
Lecture 1-1: Introduction; Basic Java Programs
reading: 1.1 - 1.3
Copyright 2013 by Pearson Education
2
Programming
program: A set of instructions
to be carried out by a computer.
program execution: The act of
carrying out the instructions
contained in a program.
programming language: A systematic set of rules used
to describe computations in a format that is editable by
humans.
Copyright 2013 by Pearson Education
3
Course principles
Lots of resources and people who want to help you
Deliberate topic progression
Coherence between lectures, sections, labs, homework,
exams
What you do will determine what you learn
Copyright 2013 by Pearson Education
4
Take this course if you…
… like solving tricky problems
… like building things
… (will) work with large data sets
… are curious about how Facebook, Google, etc work
… have never written a computer program before
… are shopping around for a major
142 is a good predictor of who will enjoy and succeed in CSE
Copyright 2013 by Pearson Education
5
Why Java?
Relatively simple
Object-oriented
Pre-written software
Platform independent (Mac, Windows…)
Widely used
#1 in popularity ie
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.h
Copyright 2013 by Pearson Education
6
Compiling/running a program
1. Write it.
code or source code: The set of instructions in a program.
1. 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.
1. Run (execute) it.
output: The messages printed to the user by a program.
source code
compile
byte code
run
output
Copyright 2013 by Pearson Education
7
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 2013 by Pearson Education
8
Structure of a Java program
public class name {
public static void main(String[] args) {
statement;;
statement;;
......
statement;;
}
}
Every executable Java program consists of a class,
that contains a method named main,
 that contains the statements (commands) to be executed.
class: a program
statement: a command to be executed
method: a named group
of statements
Copyright 2013 by Pearson Education
9
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 2013 by Pearson Education
10
Names and identifiers
You must give your program a name.
public class GangstaRap {
Naming convention: capitalize each word (e.g. MyClassName)
Your program's file must match exactly (GangstaRap.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 TheCure ANSWER_IS_42 $bling$
 illegal: me+u 49ers side-swipe Ph.D's
Copyright 2013 by Pearson Education
11
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
i.e., You may not use char or while for the name of a class.
Copyright 2013 by Pearson Education
12
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 2013 by Pearson Education
13
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
The compiler shows the line number where it found the error.
The error messages can be tough to understand!
Copyright 2013 by Pearson Education
14
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 2013 by Pearson Education
15
Escape sequences
escape sequence: A special sequence of characters used
to represent certain special characters in a string.
t tab character
n new line character
" quotation mark character
 backslash character
Example:
System.out.println("hellonhowtare "you"?");
Output:
hello
how are "you"?
Copyright 2013 by Pearson Education
16
Questions
What is the output of the following println statements?
System.out.println("tatbtc");
System.out.println("");
System.out.println("'");
System.out.println(""""");
System.out.println("C:ninthe downward spiral");
Write a println statement to produce this output:
/  //  ///
Copyright 2013 by Pearson Education
17
Answers
Output of each println statement:
a b c

'
"""
C:
in he downward spiral
println statement to produce the line of output:
System.out.println("/  //  /// ");
Copyright 2013 by Pearson Education
18
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 2013 by Pearson Education
19
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 "");

Contenu connexe

Tendances (20)

Introduction to Java Programming
Introduction to Java ProgrammingIntroduction to Java Programming
Introduction to Java Programming
 
Getting Program Input
Getting Program Input Getting Program Input
Getting Program Input
 
Intro Java Rev010
Intro Java Rev010Intro Java Rev010
Intro Java Rev010
 
FLossEd-BK Tequila Framework3.2.1
FLossEd-BK Tequila Framework3.2.1FLossEd-BK Tequila Framework3.2.1
FLossEd-BK Tequila Framework3.2.1
 
Bb Tequila Coding Style (Draft)
Bb Tequila Coding Style (Draft)Bb Tequila Coding Style (Draft)
Bb Tequila Coding Style (Draft)
 
Introduction of exception in vb.net
Introduction of exception in vb.netIntroduction of exception in vb.net
Introduction of exception in vb.net
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Chapter 2.1
Chapter 2.1Chapter 2.1
Chapter 2.1
 
War of the Machines: PVS-Studio vs. TensorFlow
War of the Machines: PVS-Studio vs. TensorFlowWar of the Machines: PVS-Studio vs. TensorFlow
War of the Machines: PVS-Studio vs. TensorFlow
 
Intro to programing with java-lecture 1
Intro to programing with java-lecture 1Intro to programing with java-lecture 1
Intro to programing with java-lecture 1
 
2.3.tarek
2.3.tarek2.3.tarek
2.3.tarek
 
9781439035665 ppt ch05
9781439035665 ppt ch059781439035665 ppt ch05
9781439035665 ppt ch05
 
Java Programming Fundamentals
Java Programming Fundamentals Java Programming Fundamentals
Java Programming Fundamentals
 
Java bad coding practices
Java bad coding practicesJava bad coding practices
Java bad coding practices
 
Java Lab
Java LabJava Lab
Java Lab
 
9781111530532 ppt ch05
9781111530532 ppt ch059781111530532 ppt ch05
9781111530532 ppt ch05
 
Programming in Java: Organising Your Code
Programming in Java: Organising Your CodeProgramming in Java: Organising Your Code
Programming in Java: Organising Your Code
 
Laravel Unit Testing
Laravel Unit TestingLaravel Unit Testing
Laravel Unit Testing
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
9781439035665 ppt ch04
9781439035665 ppt ch049781439035665 ppt ch04
9781439035665 ppt ch04
 

Similaire à Introduction to Java Programming with Examples and Exercises

01-ch01-1-println.ppt java introduction one
01-ch01-1-println.ppt java introduction one01-ch01-1-println.ppt java introduction one
01-ch01-1-println.ppt java introduction onessuser656672
 
JAVA Programming notes.ppt
JAVA Programming notes.pptJAVA Programming notes.ppt
JAVA Programming notes.pptAravindSiva19
 
Java Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECJava Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECSreedhar Chowdam
 
ch01-basic-java-programs.ppt
ch01-basic-java-programs.pptch01-basic-java-programs.ppt
ch01-basic-java-programs.pptMahyuddin8
 
Chapter 2.4
Chapter 2.4Chapter 2.4
Chapter 2.4sotlsoc
 
Java lab1 manual
Java lab1 manualJava lab1 manual
Java lab1 manualnahalomar
 
java 1 new.pdf
java 1 new.pdfjava 1 new.pdf
java 1 new.pdfSulSya
 
Ch01 basic-java-programs
Ch01 basic-java-programsCh01 basic-java-programs
Ch01 basic-java-programsJames Brotsos
 
Big Java Chapter 1
Big Java Chapter 1Big Java Chapter 1
Big Java Chapter 1Maria Joslin
 
Eo gaddis java_chapter_02_5e
Eo gaddis java_chapter_02_5eEo gaddis java_chapter_02_5e
Eo gaddis java_chapter_02_5eGina Bullock
 
C language industrial training report
C language industrial training reportC language industrial training report
C language industrial training reportRaushan Pandey
 
Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz SAurabh PRajapati
 
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...yazad dumasia
 
Unit2 java
Unit2 javaUnit2 java
Unit2 javamrecedu
 

Similaire à Introduction to Java Programming with Examples and Exercises (20)

01-ch01-1-println.ppt java introduction one
01-ch01-1-println.ppt java introduction one01-ch01-1-println.ppt java introduction one
01-ch01-1-println.ppt java introduction one
 
JAVA Programming notes.ppt
JAVA Programming notes.pptJAVA Programming notes.ppt
JAVA Programming notes.ppt
 
Java Notes
Java Notes Java Notes
Java Notes
 
Java Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECJava Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPREC
 
ch01-basic-java-programs.ppt
ch01-basic-java-programs.pptch01-basic-java-programs.ppt
ch01-basic-java-programs.ppt
 
Chapter 2.4
Chapter 2.4Chapter 2.4
Chapter 2.4
 
java intro.pptx.pdf
java intro.pptx.pdfjava intro.pptx.pdf
java intro.pptx.pdf
 
Java lab1 manual
Java lab1 manualJava lab1 manual
Java lab1 manual
 
java 1 new.pdf
java 1 new.pdfjava 1 new.pdf
java 1 new.pdf
 
Ch01 basic-java-programs
Ch01 basic-java-programsCh01 basic-java-programs
Ch01 basic-java-programs
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
Javalecture 1
Javalecture 1Javalecture 1
Javalecture 1
 
Big Java Chapter 1
Big Java Chapter 1Big Java Chapter 1
Big Java Chapter 1
 
Eo gaddis java_chapter_02_5e
Eo gaddis java_chapter_02_5eEo gaddis java_chapter_02_5e
Eo gaddis java_chapter_02_5e
 
Java introduction
Java introductionJava introduction
Java introduction
 
C language industrial training report
C language industrial training reportC language industrial training report
C language industrial training report
 
Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz
 
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
 
Introduction to java programming part 1
Introduction to java programming   part 1Introduction to java programming   part 1
Introduction to java programming part 1
 
Unit2 java
Unit2 javaUnit2 java
Unit2 java
 

Dernier

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Dernier (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Introduction to Java Programming with Examples and Exercises

  • 1. Copyright 2013 by Pearson Education Building Java Programs Chapter 1 Lecture 1-1: Introduction; Basic Java Programs reading: 1.1 - 1.3
  • 2. Copyright 2013 by Pearson Education 2 Programming program: A set of instructions to be carried out by a computer. program execution: The act of carrying out the instructions contained in a program. programming language: A systematic set of rules used to describe computations in a format that is editable by humans.
  • 3. Copyright 2013 by Pearson Education 3 Course principles Lots of resources and people who want to help you Deliberate topic progression Coherence between lectures, sections, labs, homework, exams What you do will determine what you learn
  • 4. Copyright 2013 by Pearson Education 4 Take this course if you… … like solving tricky problems … like building things … (will) work with large data sets … are curious about how Facebook, Google, etc work … have never written a computer program before … are shopping around for a major 142 is a good predictor of who will enjoy and succeed in CSE
  • 5. Copyright 2013 by Pearson Education 5 Why Java? Relatively simple Object-oriented Pre-written software Platform independent (Mac, Windows…) Widely used #1 in popularity ie http://www.tiobe.com/index.php/content/paperinfo/tpci/index.h
  • 6. Copyright 2013 by Pearson Education 6 Compiling/running a program 1. Write it. code or source code: The set of instructions in a program. 1. 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. 1. Run (execute) it. output: The messages printed to the user by a program. source code compile byte code run output
  • 7. Copyright 2013 by Pearson Education 7 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
  • 8. Copyright 2013 by Pearson Education 8 Structure of a Java program public class name { public static void main(String[] args) { statement;; statement;; ...... statement;; } } Every executable Java program consists of a class, that contains a method named main,  that contains the statements (commands) to be executed. class: a program statement: a command to be executed method: a named group of statements
  • 9. Copyright 2013 by Pearson Education 9 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.
  • 10. Copyright 2013 by Pearson Education 10 Names and identifiers You must give your program a name. public class GangstaRap { Naming convention: capitalize each word (e.g. MyClassName) Your program's file must match exactly (GangstaRap.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 TheCure ANSWER_IS_42 $bling$  illegal: me+u 49ers side-swipe Ph.D's
  • 11. Copyright 2013 by Pearson Education 11 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 i.e., You may not use char or while for the name of a class.
  • 12. Copyright 2013 by Pearson Education 12 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 ...
  • 13. Copyright 2013 by Pearson Education 13 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 The compiler shows the line number where it found the error. The error messages can be tough to understand!
  • 14. Copyright 2013 by Pearson Education 14 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."
  • 15. Copyright 2013 by Pearson Education 15 Escape sequences escape sequence: A special sequence of characters used to represent certain special characters in a string. t tab character n new line character " quotation mark character backslash character Example: System.out.println("hellonhowtare "you"?"); Output: hello how are "you"?
  • 16. Copyright 2013 by Pearson Education 16 Questions What is the output of the following println statements? System.out.println("tatbtc"); System.out.println(""); System.out.println("'"); System.out.println("""""); System.out.println("C:ninthe downward spiral"); Write a println statement to produce this output: / // ///
  • 17. Copyright 2013 by Pearson Education 17 Answers Output of each println statement: a b c ' """ C: in he downward spiral println statement to produce the line of output: System.out.println("/ // /// ");
  • 18. Copyright 2013 by Pearson Education 18 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 "
  • 19. Copyright 2013 by Pearson Education 19 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 "");