Core Java Report
Core Java Report
(June-July, 2012)
Submitted by:-
Sandeep Singh
Reg.no.:-10901876
Prog. Name:-B.Tech-CSE
CSE/IT Dept.
(Signature of student)
Date: 07/08/2012
Acknowledgement
First of all I am very happy that LPU is editing such type of activities In its
course that provides students a chance to unleash their talent by making newer
and newer projects.and finally I am very thankful to my training tutor who
assigned in me the desire of making more and more project.
Charanbir Singh
REG.NO:-10905650
TRAINING INSTITUTE:- APPIN SECURITY GROUP
Later the name XIRS was dropped from the company and the merged entity is known as
Appin Technologies. From USA & India, the company has now expanded its operations to
Europe, Africa and South East Asia as well.
The company has gone through several mergers and acquisitions and has operated businesses
under the trademarks 'Appin Knowledge Solutions', 'XIRS Appin', 'Appin Technologies',
'Appin Overseas', 'Appin Software Security' all of whom form a part of the current Appin
Security Group.
Appin Security Group is an industry leader in Information Security & Investigative solutions
and training. Our focus is to attract and develop great talent. Are you ready to be challenged?
Are you ready to achieve and be recognized? It's all here for you. Explore the possibilities
and start your job by enrolling yourself training programs at 'Appin Technology Lab'. To join
a program, please click 'IT & Security training' icon on left and chose the nearest center.
Hiring at Appin Security Group is limited to students graduating from Appin's training
centers running globally. If you feel you are a deserving candidate and are unable to join our
courses for any reason, you can write to us at 'hr@appinonline.com'.
WORK CULTURE
We all know that making time for relaxation, reflection…vacation, is important. But, at
Appin, we believe it is equally important to maintain a work environment that
encourages...fun!
Last year, employees and their blood relatives from 17 locations participated in golf outings,
cricket and more and more.
Super Savings
Lots of us are watching our budgets these days, so bargains and discounts are always
welcome. Appin's HR benefits offer a total of 27 different discount programs for employees,
including everything from day care to pet insurance to new cars!
Professionalism and Integrity. Employer of Choice. Accelerated Growth. Global Strength and
Consistency. These are Appin's four strategic priorities.
Taking Time
Most employees need to accrue five years of service with their employer to get 18 days of
Personal Time Off each year. Appin offers employees at least that many, and they don't need
to wait for years!
Diversity
Appin continues its efforts to encourage and promote diversity in the workplace. Our New
Delhi, India based headquarters has employees of all 25 states of India and 7 different
nationalities
Appin security group has developed and created a highly effective and efficient means to
removing unwanted content from the Internet. We use our strong commercial relationships
with social media and complaints or ripoff website publishers to get the content removed.
Through the negative content removal service, appin will contact the host web site and not
only demand the immediate take down of the content, but will also explain to them the
improper nature of the posting and the need for its immediate removal. We also demand and
warn the offending sites that it may not, under any circumstances, repost, resubmit, or
otherwise disseminate the offending information else threaten them with legal action. We will
also co-ordinate with police and lawyers to threaten content writers and website publishers.
We may also use offensive security technology to protect your online reputation.
Every day when Appin-ites wake up, we strive to come up with new ways to make our clients
feel more secured. Its our mission to secure what is important to you, and to better it with
time.
We offer Information Security, Ethical Hacking & Allied Technology training to students and
help them build a career by taking our coursesranging from 6 weeks to 3 years. Having
trained and mentored over 83000 students in classroom and distance learning training
sessions; we are confident of doing justice with a students career. We also provide exclusive
business opportunities to Individuals and Small Business to start afranchise in their area
focused on IT & Security training and solutions.
Over 110 entrepreneurs have joined hands with us in 18 nations and 70 cities. Its true that we
are still very short of the 33000 mark achieved by Subway but hope to get there soon.
Last but not the least, Appin holds unique distinction of providingInformation
security consulting & network security services to India's all 4 major airports and is also
a security solutions provider to over 1300 Websites that are audited and monitored by Appin
globally.
We have served Microsoft, Intuit, Actis & Daikin; we promise to help you with your security
needs with equal zeal and enthusiasm if you are 20 people company that selects us as
their security partner. We will feel extremely privileged for same.
ii LOCATION :- Amritsar
Appin Technology Lab
233-A, Opp. GNDU
Amritsar.
phone no:-:1912436741
Java programming language was originally developed by Sun Microsystems, which was
initiated by James Gosling and released in 1995 as core component of Sun Microsystems.s
Java platform (Java 1.0 [J2SE]).
The latest release of the Java Standard Edition is 7 (J2SE). With the advancement of Java and
its wide spread popularity, multiple configurations were built to suite various types of
platforms. Ex: J2EE for Enterprise Applications, J2ME for Mobile Applications.
Sun Microsystems has renamed the new J2 versions as Java SE, Java EE and Java ME
respectively. Java is guaranteed to be Write Once, Run Anywhere.
FEATURES:-
Object Oriented : In java everything is an Object. Java can be easily extended since it
is based on the Object model.
Simple :Java is designed to be easy to learn. If you understand the basic concept of
OOP java would be easy to master.
Secure : With Java's secure feature it enables to develop virus-free, tamper-free
systems. Authentication techniques are based on public-key encryption.
Architectural- neutral :Java compiler generates an architecture-neutral object file
format which makes the compiled code to be executable on many processors, with the
presence Java runtime system.
Robust :Java makes an effort to eliminate error prone situations by emphasizing mainly
on compile time error checking and runtime checking.
Interpreted :Java byte code is translated on the fly to native machine instructions and is
not stored anywhere. The development process is more rapid and analytical since the
linking is an incremental and light weight process.
High Performance: With the use of Just-In-Time compilers Java enables high
performance.
A Java Development Kit (JDK) is a program development environment for writing Java
applets and applications. It consists of a runtime environment that "sits on top" of the
operating system layer as well as the tools and programming that developers need to compile,
debug, and run applets and applications written in the Java language.
The Java Runtime Environment (JRE), also known as Java Runtime, is part of the Java
Development Kit (JDK), a set of programming tools for developing Java applications. The
Java Runtime Environment provides the minimum requirements for executing a Java
application; it consists of the Java Virtual Machine (JVM), core classes, and supporting files.
A Java virtual machine (JVM) is a virtual machine that can execute Java bytecode. It is the
code execution component of the Java software platform.
JVMs are available for many hardware and software platforms. The use of the same bytecode
for all JVMs on all platforms allows Java to be described as a write once, run
anywhere programming language, versus write once, compile anywhere, which describes
cross-platform compiled languages. Thus, the JVM is a crucial component of the Java
platform
Java program
Syntax:-
Class class _name
A simple program code that would print the words Hello World.
Compilation and execution of the program. Please follow the steps written below:
3. After that Open a command prompt window and go to the directory where you saved the
class. Let us assume its C:\.
4. Type ' javac MyFirstJavaProgram.java ' and press enter to compile your code. If there are no
errors in your code the command prompt will take you to the next line.( Assumption : The
path variable is set).
Java is an Object Oriented Language. As a language that has the Object Oriented feature Java
supports the following fundamental concepts:
Polymorphism
Inheritance
Encapsulation
Abstraction
Classes
Objects
Instance
Polymorphism
Polymorphism is the ability of an object to take on many forms. The most common use of
polymorphism in OOP occurs when a parent class reference is used to refer to a child
class object.
Inheritance
Inheritance can be defined as the process where one object acquires the properties of
another. With the use of inheritance the information is made manageable in a hierarchical
order.
Simple inheritance:
When a subclass is derived simply from it's parent class then this mechanism is known as
simple inheritance. In case of simple inheritance there is only a sub class and it's parent class.
It is also called single inheritance or one level inheritance.
class A {
int x;
int y;
int get(int p, int q){ Multilevel Inheritance
x=p; y=q; return(0);
} It is the enhancement of the concept of inheritance.
void Show(){ When a subclass is derived from a derived class then
System.out.println(x); this mechanism is known as the multilevel inheritance.
} The derived class is called the subclass or child class for
} it's parent class and this parent class works as the child
class for it's just above ( parent ) class. Multilevel
class B extends A{ inheritance can go up to any number of level.
class C extends B{
void display(){
System.out.println("C");
}
public static void main(String args[]){
A a = new A();
a.get(5,6);
a.Show(); }
}
Abstraction
Abstraction refers to the ability to make a class abstract in OOP. An abstract class is one
that cannot be instantiated. All other functionality of the class still exists, and its fields,
methods, and constructors are all accessed in the same manner. We just cannot create an
instance of the abstract class.
declaration.
abstract class Figure {
double dim1;
double dim2;
Figure(double a, double b) {
dim1 = a;
dim2 = b;
}
abstract double area();
}
class Rectangle extends Figure {
Rectangle(double a, double b) {
super(a, b);
}
double area() {
System.out.println("Inside Area for Rectangle.");
return dim1 * dim2;
}
}
class AbstractAreas {
public static void main(String args[]) {
Rectangle r = new Rectangle(9, 5);
Triangle t = new Triangle(10, 8);
Figure figref;
figref = r;
System.out.println("Area is " + figref.area());
figref = t;
System.out.println("Area is " + figref.area());
}
}
Encapsulation
Encapsulation is one of the four fundamental OOP concepts. The other three are inheritance,
polymorphism, and abstraction.
Encapsulation is the technique of making the fields in a class private and providing access to
the fields via public methods. If a field is declared private, it cannot be accessed by anyone
outside the class, thereby hiding the fields within the class. For this reason, encapsulation is
also referred to as data hiding.
Object - Objects have states and behaviors. Example: A dog has states-color, name,
breed as well as behaviors -wagging, barking, eating. An object is an instance of a
class.
Class - A class can be defined as a template/ blue print that describe the
behaviors/states that object of its type support.
Objects in Java:
Let us now look deep into what are objects. If we consider the real-world we can find many
objects around us, Cars, Dogs, Humans etc. All these objects have a state and behavior.
If we consider a dog then its state is . name, breed, color, and the behavior is . barking,
wagging, running
If you compare the software object with a real world object, they have very similar
characteristics.
Software objects also have a state and behavior. A software object's state is stored in fields
and behavior is shown via methods.
So in software development methods operate on the internal state of an object and the object-
to-object communication is done via methods.
Classes in Java:
void barking(){
}
void hungry(){
}
void sleeping(){
}
}
Local variables . variables defined inside methods, constructors or blocks are called
local variables. The variable will be declared and initialized within the method and the
variable will be destroyed when the method has completed.
Instance variables . Instance variables are variables within a class but outside any
method. These variables are instantiated when the class is loaded. Instance variables
can be accessed from inside any method, constructor or blocks of that particular class.
Class variables . Class variables are variables declared with in a class, outside any
method, with the static keyword.
A class can have any number of methods to access the value of various kind of methods. In
the above example, barking(), hungry() and sleeping() are variables.
Below mentioned are some of the important topics that need to be discussed when looking
into classes of the Java Language.
Constructors:
When discussing about classes one of the most important sub topic would be constructors.
Every class has a constructor. If we do not explicitly write a constructor for a class the java
compiler builds a default constructor for that class.
Each time a new object is created at least one constructor will be invoked. The main rule of
constructors is that they should have the same name as the class. A class can have more than
one constructor.
class Puppy{
public puppy(){
}
Object:
Creating an object
class Puppy{
public Puppy(String name){
// This constructor has one parameter, name.
System.out.println("Passed Name is :" + name );
}
public static void main(String []args){
// Following statement would create an object myPuppy
Puppy myPuppy = new Puppy( "tommy" );
}
}
Java Package:
In simple it is a way of categorizing the classes and interfaces. When developing applications
in Java, hundreds of classes and interfaces will be written, therefore categorizing these
classes is a must as well as makes life much easier.
Import statements:
In java if a fully qualified name, which includes the package and the class name, is given then
the compiler can easily locate the source code or classes. Import statement is a way of giving
the proper location for the compiler to find that particular class.
For example following line would ask compiler to load all the classes available in directory
java_installation/java/io :
import java.io.*;
Java has very flexible three looping mechanisms. You can use one of the following three
loops:
while Loop
do...while Loop
for Loop
As of java 5 the enhanced for loop was introduced. This is mainly used for Arrays.
A while loop is a control structure that allows you to repeat a task a certain number of times.
Syntax:
while(Boolean_expression)
{
//Statements
}
A do...while loop is similar to a while loop, except that a do...while loop is guaranteed to
execute at least one time.
Syntax:
The syntax of a do...while loop is:
do
{
//Statements
}while(Boolean_expression);
A for loop is a repetition control structure that allows you to efficiently write a loop that
needs to execute a specific number of times.
A for loop is useful when you know how many times a task is to be repeated.
Syntax:
As of java 5 the enhanced for loop was introduced. This is mainly used for Arrays.
Syntax:
for(declaration : expression)
{
//Statements
}
The break keyword is used to stop the entire loop. The break keyword must be used inside
any loop or a switch statement.
The break keyword will stop the execution of the innermost loop and start executing the next
line of code after the block.
The continue keyword can be used in any of the loop control structures. It causes the loop to
immediately jump to the next iteration of the loop.
In a for loop, the continue keyword causes flow of control to immediately jump to the
update statement.
In a while loop or do/while loop, flow of control immediately jumps to the Boolean
expression.
Syntax:
continue;
The if Statement:
Syntax:
An if statement can be followed by an optional else statement, which executes when the
Boolean expression is false.
Syntax:
if(Boolean_expression){
//Executes when the Boolean expression is true
}else{
//Executes when the Boolean expression is false
}
An if statement can be followed by an optional else if...else statement, which is very usefull
to test various conditions using single if...else if statement.
Syntax:
if(Boolean_expression 1){
//Executes when the Boolean expression 1 is true
}else if(Boolean_expression 2){
//Executes when the Boolean expression 2 is true
}else if(Boolean_expression 3){
//Executes when the Boolean expression 3 is true
}else {
//Executes when the one of the above condition is true.
}
It is always legal to nest if-else statements. When using if , else if , else statements there are
few points to keep in mind.
An if can have zero or one else's and it must come after any else if's.
An if can have zero to many else if's and they must come before the else.
Once an else if succeeds, none of he remaining else if's or else's will be tested.
Syntax:
if(Boolean_expression 1){
//Executes when the Boolean expression 1 is true
if(Boolean_expression 2){
//Executes when the Boolean expression 2 is true
}
}
A switch statement allows a variable to be tested for equality against a list of values. Each
value is called a case, and the variable being switched on is checked for each case.
Syntax:
switch(expression){
case value :
//Statements
break; //optional
case value :
//Statements
break; //optional
//You can have any number of case statements.
default : //Optional
//Statements
}
Easy to Use:
Reliability:
Java needed to reduce the likelihood of fatal errors from
programmer mistakes.With this in mind, object-oriented programming was introduced.
Once data andits manipulation were packaged together in one place, it increased Java’s
robustness.
Secure:
As Java was originally targeting mobile devices that would be exchangingdata over
networks, it was built to include a high level of security. Java is probably the most
secure programming language to date.
Platform Independent:
Programs needed to work regardless of the machine theywere being executed on. Java was
written to be a portable language that doesn't care aboutthe operating system or the hardware
of the computer.
Project
Simulator of an Elevator
Source code:
//Elevator Simulator
//Two Elevators
MyLift L1=new MyLift();
MyLift L2=new MyLift();
E24Up.SetMyButton(500,50,30,22,"Up","E24Up");
//E24Down.SetMyButton(500,80,50,22,"Down","E24Down");
E23Up.SetMyButton(500,175,30,22,"Up","E23Up");
E23Down.SetMyButton(500,205,50,22,"Down","E23Down");
E22Up.SetMyButton(500,300,30,22,"Up","E22Up");
E22Down.SetMyButton(500,330,50,22,"Down","E22Down");
//E21Up.SetMyButton(500,425,30,22,"Up","E21Up");
E21Down.SetMyButton(500,455,50,22,"Down","E21Down");
E11.SetMyButton(50,530,8,8,"1","E11");
E12.SetMyButton(70,530,8,8,"2","E12");
E13.SetMyButton(90,530,8,8,"3","E13");
E14.SetMyButton(110,530,8,8,"4","E14");
E21.SetMyButton(690,530,8,8,"1","E21");
E22.SetMyButton(710,530,8,8,"2","E22");
E23.SetMyButton(730,530,8,8,"3","E23");
E24.SetMyButton(750,530,8,8,"4","E24");
//===========================Defination of Location,Size,Text,Id of Two
Elevators
L1.SetMyLift(1,200,50,80,"L1","L1");
L2.SetMyLift(1,600,50,80,"L2","L2");
E1Source.SetMyButton(20,601,50,20,"Source","E1Source");
E1Target.SetMyButton(20,622,50,20,"Target","E1Target");
E1Go.SetMyButton(100,610,30,20,"Go","E1Go");
E2Source.SetMyButton(670,601,50,20,"Source","E2Source");
E2Target.SetMyButton(670,622,50,20,"Target","E2Target");
E2Go.SetMyButton(770,610,30,20,"Go","E2Go");
EStop.SetMyButton(415,600,40,20,"Stop","EStop");
E1Emergency.SetMyButton(130,530,73,25,"Emergency","E1Emergency");
E1Open.SetMyButton(210,530,45,25,"Open","E1Open");
E1Close.SetMyButton(265,530,50,25,"Close","E1Close");
int k=370;
E2Emergency.SetMyButton(k+130,530,73,25,"Emergency","E2Emergency");
E2Open.SetMyButton(k+210,530,45,25,"Open","E2Open");
E2Close.SetMyButton(k+265,530,50,25,"Close","E2Close");
}
E2Emergency.Draw(g);
E2Open.Draw(g);
E2Close.Draw(g);
g.setColor(Color.magenta);
g.drawString("Administrator",400,590);
g.setColor(Color.black);
g.drawString("Internal Panel",500,560);
g.drawString("Internal Panel",690,560);
int i,j;
g.setColor(Color.gray);
for(j=150;j<=575;j=j+125)
{
g.drawLine(0,j-1,800,j-1);
g.drawString("Floor No " + (5-(j /125)),380,j-130);
}
g.drawLine(0,575,800,575);
g.setColor(Color.red);
g.drawString("Elevator 1",180,20);
g.drawString("Elevator 2",580,20);
E14Up.Draw(g);
//E14Down.Draw(g);
E13Up.Draw(g);
E13Down.Draw(g);
E12Up.Draw(g);
E12Down.Draw(g);
//E11Up.Draw(g);
E11Down.Draw(g);
E24Up.Draw(g);
//E24Down.Draw(g);
E23Up.Draw(g);
E23Down.Draw(g);
E22Up.Draw(g);
E22Down.Draw(g);
//E21Up.Draw(g);
E21Down.Draw(g);
E11.Draw(g);E12.Draw(g);E13.Draw(g);E14.Draw(g);
E21.Draw(g);E22.Draw(g);E23.Draw(g);E24.Draw(g);
L1.Draw(g);
L2.Draw(g);
g.setColor(Color.blue);
/*g.drawString("Busy",100,40);
g.drawString("Busy",100,190);
g.drawString("Busy",100,340);
g.drawString("Busy",100,490);
g.drawString("Busy",660,40);
g.drawString("Busy",660,190);
g.drawString("Busy",660,340);
g.drawString("Busy",660,490);
*/
UserId="User";
if(Msg=="E11") { L1.Move(g,1,UserId); }
if(Msg=="E12") { L1.Move(g,2,UserId); }
if(Msg=="E13") { L1.Move(g,3,UserId); }
if(Msg=="E14") { L1.Move(g,4,UserId); }
if(Msg=="E21") { L2.Move(g,1,UserId); }
if(Msg=="E22") { L2.Move(g,2,UserId); }
if(Msg=="E23") { L2.Move(g,3,UserId); }
if(Msg=="E24") { L2.Move(g,4,UserId); }
g.setColor(Color.gray);
for(j=150;j<=575;j=j+125)
{
g.drawLine(0,j-1,800,j-1);
g.drawString("Floor No " + (5-(j /125)),380,j-130);
}
g.setColor(Color.blue);
g.drawString(" At Floor " +L1.Floor,100,40);
g.drawString(" At Floor " +L1.Floor,100,165);
g.drawString(" At Floor " +L1.Floor,100,290);
g.drawString(" At Floor " +L1.Floor,100,415);
E1Source.Draw(g);g.setColor(Color.red);g.drawString(""+s1,80,615);
E1Target.Draw(g);g.setColor(Color.red);g.drawString(""+t1,80,635);
E1Go.Draw(g);
E2Source.Draw(g);g.setColor(Color.red);g.drawString(""+s2,750,615);
E2Target.Draw(g);g.setColor(Color.red);g.drawString(""+t2,750,635);
E2Go.Draw(g);
MakeHistory.WriteIt(MyLift.Trans,g);
}
//Msg=E11Up.Execute(mousex,mousey)
Msg=E12Up.Execute(mousex,mousey);
if(Msg=="")
Msg=E13Up.Execute(mousex,mousey);
if (Msg=="")
Msg=E14Up.Execute(mousex,mousey);
if (Msg=="")
Msg=E11Down.Execute(mousex,mousey);
if (Msg=="")
Msg=E12Down.Execute(mousex,mousey);
if (Msg=="")
Msg=E13Down.Execute(mousex,mousey);
if (Msg=="")
//Msg=E14Down.Execute(mousex,mousey);
//Msg=E21Up.Execute(mousex,mousey)
Msg=E22Up.Execute(mousex,mousey);
if (Msg=="")
Msg=E23Up.Execute(mousex,mousey);
if (Msg=="")
Msg=E24Up.Execute(mousex,mousey);
if (Msg=="")
Msg=E21Down.Execute(mousex,mousey);
if (Msg=="")
Msg=E22Down.Execute(mousex,mousey);
if (Msg=="")
Msg=E23Down.Execute(mousex,mousey);
if (Msg=="")
//Msg=E24Down.Execute(mousex,mousey);
Msg=E11.Execute(mousex,mousey);
if (Msg=="")
Msg=E12.Execute(mousex,mousey);
if (Msg=="")
Msg=E13.Execute(mousex,mousey);
if (Msg=="")
Msg=E14.Execute(mousex,mousey);
if (Msg=="")
Msg=E21.Execute(mousex,mousey);
if (Msg=="")
Msg=E22.Execute(mousex,mousey);
if (Msg=="")
Msg=E23.Execute(mousex,mousey);
if (Msg=="")
Msg=E24.Execute(mousex,mousey);
if (Msg=="")
Msg=E1Source.Execute(mousex,mousey);
if (Msg=="")
Msg=E1Target.Execute(mousex,mousey);
if (Msg=="")
Msg=E1Go.Execute(mousex,mousey);
if (Msg=="")
Msg=E2Source.Execute(mousex,mousey);
if (Msg=="")
Msg=E2Target.Execute(mousex,mousey);
if (Msg=="")
Msg=E2Go.Execute(mousex,mousey);
if (Msg=="")
Msg=EStop.Execute(mousex,mousey);
//MyLift.MStatus=1;
//if(Msg=="EStop")
// {MyLift.MStatus=0; return; }
if (Msg!="")
{
repaint();
}
//Msg="";
}
//unhandled mouse events necessary to implements as
// elevator class implements MouseListener, MouseMotionListener
public void mouseEntered(MouseEvent me) { }
public void mouseExited(MouseEvent me) { }
public void mousePressed(MouseEvent me) {}
public void mouseReleased(MouseEvent me) {}
public void mouseDragged(MouseEvent me) {}
public void mouseMoved(MouseEvent me) { }
}
class MyButton
{
int Left,Top,Width,Height;
String Caption,Id;
//used to set different attributes of a command button
public void SetMyButton(int Left,int Top,int Width,int Height,String Caption,String
Id)
{
this.Left=Left;
this.Top=Top;
this.Width=Width;
this.Height=Height;
this.Caption=Caption;
this.Id=Id;
}
//Used to draw command button on applet which uses graphics conted Gr of the
Parent Applet
public void Draw(Graphics Gr)
{ Gr.setColor(Color.blue);
Gr.fillRoundRect(Left,Top,Width,Height,5,5);
Gr.setColor(Color.gray);
Gr.fillRoundRect(Left+3,Top+3,Width-6,Height-6,3,3);
Gr.setColor(Color.black);
Gr.drawString(Caption,Left+6,Top+16);
}
class MyLift
{ public static String Trans="";
//public static int MStatus=1;
int Left,Top,Width,Height;
public int Floor;
String Caption,Id;
Introduction to Programming
This unit is rather large and easily broken into two separate units
Input/Output
Please note that this unit can either be treated as a separate unit or taught as part of a larger
course. The primary focus here is not to teach students 1 method of input or output, but introduce a
range of IO possibilities (some written by teacher) that will allow them to read object documentation
and apply it to any situation.
Methods
Decision Structures:
Strands/Learning Outcomes Comments
4A. Students will be able to use boolean expressions to Part III Case Study
return a true or false value from a method.
4B. Students will be able to use if/then structures within
methods to control the result of a method call.
4C. Students will be able to utilize boolean method calls
within an if/then structure
4D. Students will be able to relational and logical operators
to form complex boolean statements
4E. Students will be able to trace code containing boolean
statements.
4F. Students will understand the creation and use of a class
variable as a counter.
Looping Structures
Recursion