Java Review Part 1

advertisement
CSCE 146
Hey Remember Java?
Written by:
Dr. JJ Shepherd
Objectives
•
•
•
•
•
•
•
•
Review the basics of Java
Variables
Branch Statements
Loops
Arrays
Classes
Inheritance
Exceptions
Website
• www.cse.sc.edu/~shephejj/csce146/
• Still under construction but will be up soon!
145 Was Sure Neat
• Hey you passed!
– That’s pretty rad
• Let’s review!
Variables
•
•
•
•
Used to store information
Has a defined size
Two Types of Variables
Primitive Types
– int, double, char
• Class Types
– String, PrintWriter, Exception
Variables
• Defining Variables
• Tells the computer to allocate storage in
memory given a name
• Concept
<<type>> <<name>>;
• Example
int tacosConsumed;
String tacoConvo;
Variables
• Initializing and Assigning Variables
• Sets variable to a defined value
• Concept
<<name>> = <<value>>;
• Example
tacosConsumed = 20;
tacoConvo = “I ate “ +
tacosConsumed + ” tacos. I feel
sick now”;
Branch Statements
• Used for decision making problems
• If statement concept
if(<<boolean expression>>)
{
<<body statements>>
}
Branch Statements
• Else statements are the catch all of if
statements
• Only exist if there is a prior if statement
• Else Concept
if(<<boolean expression>>)
{
<<if body>>
}
else
{
<<else body>>
}
Branch Statements
• Else if’s are short handed if statements in else
statements
• Else if concept
else if(<<boolean expression>>)
{
<<else if body>>
}
else
{
if(<<boolean expression>>)
{
<<else if body>>
}
}
Branch Statements
• Switch statements are specialized branch
statements that has cases which can be
integers, characters, or Strings
• Switch concept
switch(<<variable>>)
{
case <<value>>:
<<case body>>
break;
case <<value>>:
<<case body>>
break;
…
default:
<<default body>>
break;
}
Loops
• Loops repeat code until a boolean condition is
no longer true
• While Loop Concept
while(<<boolean expression>>)
{
<<loop body>>
}
Loops
• For loops are used to loop the body a set
amount of times
• For loop concept
for(<<counter>>;<<boolean expression>>;<<update
counter>>)
{
<<loop body>>
}
Loops
• Do while’s are dumb
• They stupidly run 1 to many times
• Concept
do
{
<<loop body>>
}
while(<<boolean expression>>);
Arrays
• Arrays are collections of data of the same type
• Concept for declaring arrays
<<type>>[] <<name>> = new <<type>>[<<amount>>];
• Use a for loop to initialize each element in the
array
• ***These are used a lot in this course***
Classes
• Blueprints to create objects
• Remember the steps
– Define the class
– Instance variables
– Constructors
– Accessors and Mutators
– Additional Methods
Classes
• Defining the class
• Concept
public class <<name>>
{
<<body of the class>>
}
Classes
• Instance variables are the attributes of the
class
• Concept
public class <<name>>
{
private <<type>> <<name>>;
…
}
Classes
• Constructs an instance of a class in memory
and sets the instance variables to a value
• Default constructors have no parameters and
set everything to a default value
public <<name of the class>>()
{
<<set all instance variables>>
}
Classes
• Parameterized Constructors have parameters
that set one or all of the instance variables to
a value
• Concept
public <<name of the class>>(<<parameters>>)
{
<<set instance variables to parameters>>
}
Classes
• Mutators are used to modify instance
variables in a class
• Adds a layer of protection by validating values
• Concept
public void <<set variable name>>(<<parameter>>)
{
this.<<variable>> = <<parameter>>;
}
Classes
• Accessors are used to get values of instance
variables outside of the class
• Concept
public <<type>> <<get variable name>>()
{
return this.<<variable>>;
}
Classes
•
•
•
•
Methods are behaviors of classes
Used internally and externally
Accessors and mutators are methods
Concept
<<scope>> <<return value>> <<name>> (<<parameters>>)
{
<<body of the method>>
}
Classes
• Static methods are static in memory
• Used as helper methods that exist outside of
one particular instance
<<scope>> static <<return value>> <<name>>
(<<parameters>>)
{
<<body of the static method>>
}
Inheritance
• Used to take the attributes and methods from
a parent (super) class
• Concept
public class <<name>> extends <<parent name>>
{
<<body of the class>>
}
Inheritance
• In inherited constructors need to all the
parent’s constructor by calling “super”
• Concept
super(<<parameters>>);
• To call inherited methods use “super.”
super.<<method name>>;
Interfaces
• Used as a blueprint to create classes. Classes
are a blueprint to create instance of objects
• Only has method definitions
• Concept
public interface <<name>>
{
<<method definition>>;
…
}
Interfaces
• Interfaces are the building concept of
polymorphism
• To use an interface used “implements”
• Concept
public class <<name>> implements <<interface name>>
{
<<body of the class>>
}
Exceptions
• Gracefully allows programs to crash and an
exceptional event happens
• To create exceptions extend the/an exception
class
• Then call the parent’s constructors
Exceptions
• Concept
public <<name>> extends <<Exception>>
{
public <<name>>(<<parameters>>)
{
super(<<parameters>>)
}
}
Exceptions
• Methods that can throw exceptions need to
check for those cases
• Concept
<<scope>> <<return>> <<name>> (<<parameters>>)
throws <<Exceptions>>
{
…
throw new <<exception name>>();
…
}
Exceptions
• If a method throws an exception it must be
called in a try catch block that handles the
exception
• Concept
try
{
<<method that throws exception>>;
}
catch(<<exception name>> e)
{
System.out.println(e.getMessage());
}
Download