SlideShare uma empresa Scribd logo
1 de 59
Baixar para ler offline
Lecture 02
Principles of Object Oriented
Programming
Java Files .java and .class
 Source code is typed into a .java file
 Code is compiled to produce .class file for each class you define
 One .class file must contain a method called main which
accepts only an array of String, which the JavaVirtual Machine
will call to start the program running
Java – Basics
❑Part 1 Elements of a Java program
❑Part 2 Logic in Java programs
❑ Selection
❑ Repetition
❑Part 3 Keyboard Input and Screen Output
❑Part 4 Methods, Classes and Objects
❑Part 5 Compiling and Executing Java Programs
Java – Basics
❑Part 1 Elements of a Java program – Source Code:
Java – Basics
❑Part 1 Elements of a Java program – Structure:
▪ A Java program
▪ is a collection of 1 or more classes
▪ each class contains 1 or more methods
▪ 1 class must contain the method called main
Java – Basics
❑String Literals (Strings): literal text to send to the
console window as output.
❑ "This is a string even with 'these' quotes inside."
❑System. out. println: is used to produce a line of
output.
System.out.println();
System.out.println("This line uses the println method.");
System.out.println("This is the first line of output.");
System.out.println();
System.out.println("This is the third, below a blank line.");
Java – Basics
❑Escape Sequences: two-character sequences that are used
to represent special characters. They all begin with the
backslash character ().
System.out.println("What "characters" does this  print?");
OUTPUT:
What "characters" does this  print?
System.out.println("Thisnproduces 3 linesnof output.");
OUTPUT:
This
produces 3 lines
of output.
Java – Basics
❑print versus println
System.out.print("To be ");
System.out.print("or not to be.");
System.out.print("That is ");
System.out.println("the question.");
System.out.print("This is");
System.out.println(" for the whole family!");
OUTPUT:
To be or not to be.That is the question.
This is for the whole family!
^
Java – Basics
❑Identifiers and Keywords
❑ Identifier: A name given to an entity in a program, such as a class
or method.
❑ The following are illegal identifiers:
two+two hi there hi-There 2by4
AllMyChildren for a class name (each word starts with a capital)
allMyChildren for a method name (starts with a lowercase letter, subsequent
words capitalized)
ALL_MY_CHILDREN for a constant name (all uppercase, with words separated by
underscores.
Java is case sensitive, so the identifiers class , Class , CLASS ,
and cLASs are all considered different.
Java – Basics
❑Part 1 Elements of a Java program – Some Keywords:
▪ Public
▪ Item can be accessed from outside class
▪ use only where necessary
▪ Static
▪ only one per class, not one per object
▪ void
▪ never returns a value
Java – Basics
❑Part 1 Elements of a Java program – Some Keywords:
▪ static method Demo
Java – Basics
❑ Part 1 Elements of a Java program – main:
▪ main
▪ There may be many classes per program
▪ Only one main method per program
▪ Not a keyword but is recognized as a starting place by the interpreter
▪ (String[] args)
▪ (String[] args)
▪ Allows user to pass values to program
(through command-line at time of executing)
Java – Basics
❑Part 1 Elements of a Java program – main:
Java – Basics
❑Part 1 Elements of a Java program – main:
Click on Your Java Project ➔ Right Click ➔ Properties ➔ Run ➔ Arguments ➔ Add the Arguments ➔ OK ➔
Run the program (not the file with the main Method)
Java – Basics
❑Part 1 Elements of a Java program – main:
What about passing three arguments that are needed to find the average of three numbers?
Java – Basics
❑Part 1 Elements of a Java program – main:
Java – Basics
❑Part 1 Elements of a Java program – Data:
▪ Bits
▪ 0s and 1s
▪ Bytes
▪ 8 bits
▪ Characters
▪ 2 bytes (unsigned)
▪ Unicode characters get converted to numeric value
▪ E.g.‘A’ ➔ 65,‘a’ ➔ 97
Java – Basics
❑Part 1 Elements of a Java program – Literal:
▪ A literal value is a value which we directly type into the code, for example:
▪ Numbers 16, -32.3, 0, 1134.954
▪ Single characters in single quotes `a`, `R`, `?`, `+`, ` `
▪ Character strings in double quotes “Howdy folks!”
▪ Escape sequences
▪ Non-printable (control) characters
▪ Quotes and backslash
▪ Preceded by backslash
• ' n ' new line
• ' t ' tab
• ' r ' carriage return
• '  ' backslash
• '  ' ' single quote
• '  '' ' double quote
Java – Basics
❑Data Type: A name for a category of data values that are
all related, as in type int in Java, which is used to
represent integer values.
❑There are eight primitive data types in Java: boolean , byte
, char , double , float , int , long , and short.
❑Four of these are considered fundamental: boolean , char ,
double , and int .
❑The other four types are variations that exist for programs
that have special requirements.
Java – Basics
❑Part 1 Elements of a Java program – Common Data
Types:
Java – Basics
❑Expression: A simple value or a set of operations that
produces a value.
❑Example:
(2 * 6) + (4 * 4) + 2
 Evaluation: The process of obtaining the value of an
expression.
 Operator: A special symbol (like + or * ) that is used
to indicate an operation to be performed on one or more
values.
Java – Basics
❑Java Operator Precedence:
13 * 2 + 239 / 10 % 5 − 2 * 2
Result = 25
Java – Basics
❑Variable: A memory location with a name and a type
that stores a value.
❑ Declaration: A request to set aside a new variable with
a given name and type.
<type> <name>;
 Assignment:
<variable> = <expression>;
Java – Basics
❑Part 1 Elements of a Java program – Declarations:
Java – Basics
❑Part 1 Elements of a Java program – AssigningValues:
Java – Basics
❑Part 1 Elements of a Java program – Strings:
▪ Words and sentences that are stored in memory can be
considered as a sequence of individual characters
▪ In many languages these are referred to as STRINGS
▪ Java has a String class to process strings
▪ It comes with several useful methods
▪ String myName = “Ali”;
▪ String yourName = “Mohammed”;
▪ int nameLength = myName.length();
▪ char Initial = myName charAt(0);
▪ int share = myName.compareTo(yourName);
Java – Basics
❑Part 1 Elements of a Java program – Mathematical
Operators:
▪ Division by zero will produce errors (because impossible)
▪ integer division gives an integer quotient
▪ integer modulus gives an integer
Java – Basics
❑Part 1 Elements of a Java program – Compound
Operators +=,-=,*=,++,--:
Java – Basics
❑Part 1 Elements of a Java program – Compound
Operators +=,-=,*=,++,--:
Java – Basics
❑Part 1 Elements of a Java program – Relational
Operators:
Java – Basics
❑Part 1 Elements of a Java program – Logical Operators:
Java – Basics
❑Part 1 Elements of a Java program – Logical Operators:
Java – Basics
❑Part 1 Elements of a Java program – Typecast
Operators:
▪ int event=70;
▪ char heat='C';
▪ double time =31.25;
▪ event=time; ??
▪ heat=event; ??
▪ time=event; ??
▪ x = (int) (3.4 * 2.9); // correct
Java – Basics
❑Part 1 Elements of a Java program – Typecast
Operators:
▪ int event=70;
▪ char heat='C';
▪ double time =31.25;
▪ event=time; ??
▪ heat=event; ??
▪ time=event; ??
Java – Basics
❑Part 1 Elements of a Java program –
❑String Concatenation: Combining several strings into a
single string, or combining a string with other data into a
new, longer string.
▪ System.out.println(12 + 3 − 1);
▪ System.out.println("I have " + 3 + " things to concatenate");
▪ Exercise: Write a Java program to compute the number
of hours, minutes, and seconds in a standard year.
Java – Basics
❑Part 2 Logic in Java programs– Boolean Logic in
Selection – IF and Switch Statements:
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures:
❑Control Structure: A syntactic
structure that controls other
statements.
Java – Basics
❑ Part 2 Logic in Java programs– Repetition control structures -The for Loop:
// A redundant program for squaring integers.
public class WriteSquares {
public static void main(String[] args) {
System.out.println(1 + " squared = " + (1 * 1));
System.out.println(2 + " squared = " + (2 * 2));
System.out.println(3 + " squared = " + (3 * 3));
System.out.println(4 + " squared = " + (4 * 4));
System.out.println(5 + " squared = " + (5 * 5));
}
}
Java – Basics
❑ Part 2 Logic in Java programs– Repetition control structures -The
for Loop:
// A program that squares integers in a for loop.
public class WriteSquares2 {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++)
{
System.out.println(i + " squared = " + (i * i));
}
}
}
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures -The for Loop:
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures:
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures:
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures:
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures -The for Loop:
❑Forgetting Curly Braces:
for (int i = 1; i <= 20; i++)
System.out.println("Hi!");
System.out.println("Ho!");
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures -The for Loop:
❑Nested for Loops:
for (int i = 1; i <= 10; i++) {
for (int j = 1; j <= 5; j++) {
System.out.println("Hi there.");
}
}
Java – Basics
❑Part 2 Logic in Java programs– Repetition control structures
-The for Loop:
❑ Write a Java program (using nested for loops) to print
out the following shape:
*
**
***
****
*****
******
Java – Basics
❑Part 2 Logic in Java programs– Repetition control
structures:
Java – Basics
❑Part 3 Keyboard Input and Screen Output– Displaying
output:
Java – Basics
❑Part 3 Keyboard Input and Screen Output– Obtaining
Input:
Java – Basics
▪ Part 4 Methods, Classes and Objects– Methods and
Method Syntax:
▪ In Java, a method is a group of code statements which are
given a name:
▪ Intended to achieve some specific goal or task in the program
▪ Can be called from other places in your program
▪ The first line of the method is the header
▪ The rest of the method (delimited by curly braces) is the body.
Java – Basics
▪ Part 4 Methods, Classes and Objects– Methods and
Method Syntax:
Java – Basics
▪ Part 4 Methods, Classes and Objects– Passing
information between methods:
▪ We can provide information to a method via parameters
▪ Parameters each have a data type
▪ Parameters are given a name, so that they can be used in the
method code
▪ Parameters are local to the method
▪ A method can give back one piece of information to its caller,
through a return value.
▪ The data type of the return value must be declared in the
method header
▪ The method body must always end with a return statement
Java – Basics
▪ Part 4 Methods, Classes and Objects– Classes:
▪ All Java programs are written as Classes
▪ Syntax for declaring Classes is as follows:
▪ Methods provide functionality that can be invoked
▪ Attributes are for data which should be remembered for the long term, that
describe the state of some thing from the real world that is being modeled.
▪ Classes are collections of methods and attributes that are in
some way closely related
Java – Basics
▪ Part 4 Methods, Classes and Objects– Classes:
Java – Basics
▪ Part 4 Methods, Classes and Objects– Classes:
▪ To create an object (called instantiating the object), you need to
use‘new’, in conjunction with the name of the class, and provide
any parameters required by the constructor:
new Rectangle(5,8)
▪ To be able to refer to that object later in the program, it needs to
be assigned to a variable which is declared of the same class type:
Rectangle aRectangle;
aRectangle = new Rectangle(7,3);
Java – Basics
▪ Part 4 Methods, Classes and Objects– Classes:
▪ Once you have a way of referring to an object, e.g. a variable, you
can send messages to the object.To send a message, you type:
▪ The name of the variable that refers to the object
▪ A full stop (also known as‘dot’)
▪ The name of the method you want that object to perform
▪ Any parameters that are required.
▪ You do this inside some other class’ code
▪ Example:
System.out.println( aRectangle.getArea() );
Java – Basics
▪ Part 5 Compiling and Executing Java Programs– Structuring
Java Programs:
▪ Each class should be written in its own .java file
▪ E.g. a Customer class would appear in Customer.java and
the ShoppingProgram class would appear in
ShoppingProgram.java
▪ If the class is declared as‘public’, it must be in a file with the
same name as the class
Java – Basics
▪ Part 5 Compiling and Executing Java Programs– Compiling
Java Programs:
▪ The command-line program javac can be used to compile a
single .java source file, e.g.:
c:> javac Rectangle.java
▪ Multiple files can be compiled at once as well:
javac Rectangle.java SimpleShapeProgram.java
▪ If you wantALL the .java files of the current directory to be
compiled, you can use the following command:
javac *.java
Java – Basics
▪ Part 5 Compiling and Executing Java Programs– Executing Java
Programs:
▪ One of the classes must have the main(String[ ] args)
method.
▪ Use the name of that class after the‘java’ command, e.g.:
c: > java SimpleShapeProgram

Mais conteúdo relacionado

Semelhante a OOP - basics.pdf

Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
Todor Kolev
 
Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
Todor Kolev
 
Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
Todor Kolev
 
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,..."Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
Vladimir Ivanov
 

Semelhante a OOP - basics.pdf (20)

Java
JavaJava
Java
 
Session 1 of programming
Session 1 of programmingSession 1 of programming
Session 1 of programming
 
Java basic
Java basicJava basic
Java basic
 
Java 101
Java 101Java 101
Java 101
 
1_JavIntro
1_JavIntro1_JavIntro
1_JavIntro
 
Learn To Code: Introduction to java
Learn To Code: Introduction to javaLearn To Code: Introduction to java
Learn To Code: Introduction to java
 
Introduction to java 101
Introduction to java 101Introduction to java 101
Introduction to java 101
 
java: basics, user input, data type, constructor
java:  basics, user input, data type, constructorjava:  basics, user input, data type, constructor
java: basics, user input, data type, constructor
 
Java
Java Java
Java
 
Java 7 New Features
Java 7 New FeaturesJava 7 New Features
Java 7 New Features
 
Inside the JVM - Follow the white rabbit! / Breizh JUG
Inside the JVM - Follow the white rabbit! / Breizh JUGInside the JVM - Follow the white rabbit! / Breizh JUG
Inside the JVM - Follow the white rabbit! / Breizh JUG
 
Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2
 
Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
 
Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
 
Java findamentals1
Java findamentals1Java findamentals1
Java findamentals1
 
Java 101 intro to programming with java
Java 101  intro to programming with javaJava 101  intro to programming with java
Java 101 intro to programming with java
 
Java 101 Intro to Java Programming
Java 101 Intro to Java ProgrammingJava 101 Intro to Java Programming
Java 101 Intro to Java Programming
 
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,..."Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
"Formal Verification in Java" by Shura Iline, Vladimir Ivanov @ JEEConf 2013,...
 
java training faridabad
java training faridabadjava training faridabad
java training faridabad
 
Java
JavaJava
Java
 

Último

Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 

Último (20)

SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 

OOP - basics.pdf

  • 1. Lecture 02 Principles of Object Oriented Programming
  • 2. Java Files .java and .class  Source code is typed into a .java file  Code is compiled to produce .class file for each class you define  One .class file must contain a method called main which accepts only an array of String, which the JavaVirtual Machine will call to start the program running
  • 3. Java – Basics ❑Part 1 Elements of a Java program ❑Part 2 Logic in Java programs ❑ Selection ❑ Repetition ❑Part 3 Keyboard Input and Screen Output ❑Part 4 Methods, Classes and Objects ❑Part 5 Compiling and Executing Java Programs
  • 4. Java – Basics ❑Part 1 Elements of a Java program – Source Code:
  • 5. Java – Basics ❑Part 1 Elements of a Java program – Structure: ▪ A Java program ▪ is a collection of 1 or more classes ▪ each class contains 1 or more methods ▪ 1 class must contain the method called main
  • 6. Java – Basics ❑String Literals (Strings): literal text to send to the console window as output. ❑ "This is a string even with 'these' quotes inside." ❑System. out. println: is used to produce a line of output. System.out.println(); System.out.println("This line uses the println method."); System.out.println("This is the first line of output."); System.out.println(); System.out.println("This is the third, below a blank line.");
  • 7. Java – Basics ❑Escape Sequences: two-character sequences that are used to represent special characters. They all begin with the backslash character (). System.out.println("What "characters" does this print?"); OUTPUT: What "characters" does this print? System.out.println("Thisnproduces 3 linesnof output."); OUTPUT: This produces 3 lines of output.
  • 8. Java – Basics ❑print versus println System.out.print("To be "); System.out.print("or not to be."); System.out.print("That is "); System.out.println("the question."); System.out.print("This is"); System.out.println(" for the whole family!"); OUTPUT: To be or not to be.That is the question. This is for the whole family! ^
  • 9. Java – Basics ❑Identifiers and Keywords ❑ Identifier: A name given to an entity in a program, such as a class or method. ❑ The following are illegal identifiers: two+two hi there hi-There 2by4 AllMyChildren for a class name (each word starts with a capital) allMyChildren for a method name (starts with a lowercase letter, subsequent words capitalized) ALL_MY_CHILDREN for a constant name (all uppercase, with words separated by underscores. Java is case sensitive, so the identifiers class , Class , CLASS , and cLASs are all considered different.
  • 10. Java – Basics ❑Part 1 Elements of a Java program – Some Keywords: ▪ Public ▪ Item can be accessed from outside class ▪ use only where necessary ▪ Static ▪ only one per class, not one per object ▪ void ▪ never returns a value
  • 11. Java – Basics ❑Part 1 Elements of a Java program – Some Keywords: ▪ static method Demo
  • 12. Java – Basics ❑ Part 1 Elements of a Java program – main: ▪ main ▪ There may be many classes per program ▪ Only one main method per program ▪ Not a keyword but is recognized as a starting place by the interpreter ▪ (String[] args) ▪ (String[] args) ▪ Allows user to pass values to program (through command-line at time of executing)
  • 13. Java – Basics ❑Part 1 Elements of a Java program – main:
  • 14. Java – Basics ❑Part 1 Elements of a Java program – main: Click on Your Java Project ➔ Right Click ➔ Properties ➔ Run ➔ Arguments ➔ Add the Arguments ➔ OK ➔ Run the program (not the file with the main Method)
  • 15. Java – Basics ❑Part 1 Elements of a Java program – main: What about passing three arguments that are needed to find the average of three numbers?
  • 16. Java – Basics ❑Part 1 Elements of a Java program – main:
  • 17. Java – Basics ❑Part 1 Elements of a Java program – Data: ▪ Bits ▪ 0s and 1s ▪ Bytes ▪ 8 bits ▪ Characters ▪ 2 bytes (unsigned) ▪ Unicode characters get converted to numeric value ▪ E.g.‘A’ ➔ 65,‘a’ ➔ 97
  • 18. Java – Basics ❑Part 1 Elements of a Java program – Literal: ▪ A literal value is a value which we directly type into the code, for example: ▪ Numbers 16, -32.3, 0, 1134.954 ▪ Single characters in single quotes `a`, `R`, `?`, `+`, ` ` ▪ Character strings in double quotes “Howdy folks!” ▪ Escape sequences ▪ Non-printable (control) characters ▪ Quotes and backslash ▪ Preceded by backslash • ' n ' new line • ' t ' tab • ' r ' carriage return • ' ' backslash • ' ' ' single quote • ' '' ' double quote
  • 19. Java – Basics ❑Data Type: A name for a category of data values that are all related, as in type int in Java, which is used to represent integer values. ❑There are eight primitive data types in Java: boolean , byte , char , double , float , int , long , and short. ❑Four of these are considered fundamental: boolean , char , double , and int . ❑The other four types are variations that exist for programs that have special requirements.
  • 20. Java – Basics ❑Part 1 Elements of a Java program – Common Data Types:
  • 21. Java – Basics ❑Expression: A simple value or a set of operations that produces a value. ❑Example: (2 * 6) + (4 * 4) + 2  Evaluation: The process of obtaining the value of an expression.  Operator: A special symbol (like + or * ) that is used to indicate an operation to be performed on one or more values.
  • 22. Java – Basics ❑Java Operator Precedence: 13 * 2 + 239 / 10 % 5 − 2 * 2 Result = 25
  • 23. Java – Basics ❑Variable: A memory location with a name and a type that stores a value. ❑ Declaration: A request to set aside a new variable with a given name and type. <type> <name>;  Assignment: <variable> = <expression>;
  • 24. Java – Basics ❑Part 1 Elements of a Java program – Declarations:
  • 25. Java – Basics ❑Part 1 Elements of a Java program – AssigningValues:
  • 26. Java – Basics ❑Part 1 Elements of a Java program – Strings: ▪ Words and sentences that are stored in memory can be considered as a sequence of individual characters ▪ In many languages these are referred to as STRINGS ▪ Java has a String class to process strings ▪ It comes with several useful methods ▪ String myName = “Ali”; ▪ String yourName = “Mohammed”; ▪ int nameLength = myName.length(); ▪ char Initial = myName charAt(0); ▪ int share = myName.compareTo(yourName);
  • 27. Java – Basics ❑Part 1 Elements of a Java program – Mathematical Operators: ▪ Division by zero will produce errors (because impossible) ▪ integer division gives an integer quotient ▪ integer modulus gives an integer
  • 28. Java – Basics ❑Part 1 Elements of a Java program – Compound Operators +=,-=,*=,++,--:
  • 29. Java – Basics ❑Part 1 Elements of a Java program – Compound Operators +=,-=,*=,++,--:
  • 30. Java – Basics ❑Part 1 Elements of a Java program – Relational Operators:
  • 31. Java – Basics ❑Part 1 Elements of a Java program – Logical Operators:
  • 32. Java – Basics ❑Part 1 Elements of a Java program – Logical Operators:
  • 33. Java – Basics ❑Part 1 Elements of a Java program – Typecast Operators: ▪ int event=70; ▪ char heat='C'; ▪ double time =31.25; ▪ event=time; ?? ▪ heat=event; ?? ▪ time=event; ?? ▪ x = (int) (3.4 * 2.9); // correct
  • 34. Java – Basics ❑Part 1 Elements of a Java program – Typecast Operators: ▪ int event=70; ▪ char heat='C'; ▪ double time =31.25; ▪ event=time; ?? ▪ heat=event; ?? ▪ time=event; ??
  • 35. Java – Basics ❑Part 1 Elements of a Java program – ❑String Concatenation: Combining several strings into a single string, or combining a string with other data into a new, longer string. ▪ System.out.println(12 + 3 − 1); ▪ System.out.println("I have " + 3 + " things to concatenate"); ▪ Exercise: Write a Java program to compute the number of hours, minutes, and seconds in a standard year.
  • 36. Java – Basics ❑Part 2 Logic in Java programs– Boolean Logic in Selection – IF and Switch Statements:
  • 37. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures: ❑Control Structure: A syntactic structure that controls other statements.
  • 38. Java – Basics ❑ Part 2 Logic in Java programs– Repetition control structures -The for Loop: // A redundant program for squaring integers. public class WriteSquares { public static void main(String[] args) { System.out.println(1 + " squared = " + (1 * 1)); System.out.println(2 + " squared = " + (2 * 2)); System.out.println(3 + " squared = " + (3 * 3)); System.out.println(4 + " squared = " + (4 * 4)); System.out.println(5 + " squared = " + (5 * 5)); } }
  • 39. Java – Basics ❑ Part 2 Logic in Java programs– Repetition control structures -The for Loop: // A program that squares integers in a for loop. public class WriteSquares2 { public static void main(String[] args) { for (int i = 1; i <= 5; i++) { System.out.println(i + " squared = " + (i * i)); } } }
  • 40. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures -The for Loop:
  • 41. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures:
  • 42. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures:
  • 43. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures:
  • 44. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures -The for Loop: ❑Forgetting Curly Braces: for (int i = 1; i <= 20; i++) System.out.println("Hi!"); System.out.println("Ho!");
  • 45. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures -The for Loop: ❑Nested for Loops: for (int i = 1; i <= 10; i++) { for (int j = 1; j <= 5; j++) { System.out.println("Hi there."); } }
  • 46. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures -The for Loop: ❑ Write a Java program (using nested for loops) to print out the following shape: * ** *** **** ***** ******
  • 47. Java – Basics ❑Part 2 Logic in Java programs– Repetition control structures:
  • 48. Java – Basics ❑Part 3 Keyboard Input and Screen Output– Displaying output:
  • 49. Java – Basics ❑Part 3 Keyboard Input and Screen Output– Obtaining Input:
  • 50. Java – Basics ▪ Part 4 Methods, Classes and Objects– Methods and Method Syntax: ▪ In Java, a method is a group of code statements which are given a name: ▪ Intended to achieve some specific goal or task in the program ▪ Can be called from other places in your program ▪ The first line of the method is the header ▪ The rest of the method (delimited by curly braces) is the body.
  • 51. Java – Basics ▪ Part 4 Methods, Classes and Objects– Methods and Method Syntax:
  • 52. Java – Basics ▪ Part 4 Methods, Classes and Objects– Passing information between methods: ▪ We can provide information to a method via parameters ▪ Parameters each have a data type ▪ Parameters are given a name, so that they can be used in the method code ▪ Parameters are local to the method ▪ A method can give back one piece of information to its caller, through a return value. ▪ The data type of the return value must be declared in the method header ▪ The method body must always end with a return statement
  • 53. Java – Basics ▪ Part 4 Methods, Classes and Objects– Classes: ▪ All Java programs are written as Classes ▪ Syntax for declaring Classes is as follows: ▪ Methods provide functionality that can be invoked ▪ Attributes are for data which should be remembered for the long term, that describe the state of some thing from the real world that is being modeled. ▪ Classes are collections of methods and attributes that are in some way closely related
  • 54. Java – Basics ▪ Part 4 Methods, Classes and Objects– Classes:
  • 55. Java – Basics ▪ Part 4 Methods, Classes and Objects– Classes: ▪ To create an object (called instantiating the object), you need to use‘new’, in conjunction with the name of the class, and provide any parameters required by the constructor: new Rectangle(5,8) ▪ To be able to refer to that object later in the program, it needs to be assigned to a variable which is declared of the same class type: Rectangle aRectangle; aRectangle = new Rectangle(7,3);
  • 56. Java – Basics ▪ Part 4 Methods, Classes and Objects– Classes: ▪ Once you have a way of referring to an object, e.g. a variable, you can send messages to the object.To send a message, you type: ▪ The name of the variable that refers to the object ▪ A full stop (also known as‘dot’) ▪ The name of the method you want that object to perform ▪ Any parameters that are required. ▪ You do this inside some other class’ code ▪ Example: System.out.println( aRectangle.getArea() );
  • 57. Java – Basics ▪ Part 5 Compiling and Executing Java Programs– Structuring Java Programs: ▪ Each class should be written in its own .java file ▪ E.g. a Customer class would appear in Customer.java and the ShoppingProgram class would appear in ShoppingProgram.java ▪ If the class is declared as‘public’, it must be in a file with the same name as the class
  • 58. Java – Basics ▪ Part 5 Compiling and Executing Java Programs– Compiling Java Programs: ▪ The command-line program javac can be used to compile a single .java source file, e.g.: c:> javac Rectangle.java ▪ Multiple files can be compiled at once as well: javac Rectangle.java SimpleShapeProgram.java ▪ If you wantALL the .java files of the current directory to be compiled, you can use the following command: javac *.java
  • 59. Java – Basics ▪ Part 5 Compiling and Executing Java Programs– Executing Java Programs: ▪ One of the classes must have the main(String[ ] args) method. ▪ Use the name of that class after the‘java’ command, e.g.: c: > java SimpleShapeProgram