340 likes | 486 Views
Java. Classes Methods Objects. Classes. Classes. We have been using classes ever since we started programming in Java Whenever we use the keyword class we would be declaring a class
E N D
Java Classes Methods Objects
Classes • We have been using classes ever since we started programming in Java • Whenever we use the keyword class we would be declaring a class • Every program must have a main class in order to work, it is the class that the JVM uses to execute the program
Why are classes used? • Classes are used to started off a program • Classes in Java are also used to create objects (we will talk about objects later on) • A class specifies • The data it contains • The code that uses the data
Classes as Building Blocks • A classes are the building blocks to programs • For example and architect draws a plan of the house before it is build, the class is the plan
Advantage of Classes • Classes provide reusability in programs • This means that a class can be used over and over again • For example we have a ready made class called the ‘Keyboard.class’, we use this over and over again when we want the program to read an input from the keyboad
Activity • Create a program and name the class myAddingClass • The code within the class should be able to add two numbers • The output should be the result of the addiion
What is a method? • Programs are used to solve complex problems and are MUCH longer than the ones we create at school • These programs are split up into a number of sections to make it easier to code and to read • These sections are called methods
… • A method holds its own specific task which is then joined to other methods to form a complete process • A method contains the actions that the program will actually perform • So first we create a class and within the class we have a number of methods
Example • Lets say we have a program to hold student records • The program could have the following methods • A method to calculate if a mark is a pass or fail • A method to calculate the average marks • A method to draw up a graph of the grades
Why do we use Methods? • Splitting a problem into different methods makes it much easier to program • Methods avoids having to have double code as if we need to use a method twice you would just need to call it
Our First Program • As we can see we have one class called FirstProgram • We have one methods which is the main method class FirstProgrsam{ public static void main (String args[]) { System.out.println(“hello World”); } }
How do we Identify Methods? • We know that a block of code is a method as we would see the following syntax • The parameter list would be what the method will be using or a statement of when the method should start method name (parameter list) { // body of the method }
Calling Methods • In Java when we say we are calling a method we mean that we are asking the program to perform the tasks of a method • This is done to save duplicate codes in our program • This makes it easier to write and understand codes
//using a methods //calling methods Class callingMethods{ //method findArea static intfindArea (intlnegth, int width) { return length * width; } public static void main (String args[]){ //calling method findArea System.out,println(“Area = “ +findArea(5,3); System.out,println(“Area = “ +findArea(5,4); System.out,println(“Area = “ +findArea(5,5); } }
Static Methods • The method in the previous program was a static method • They do not make use of instance variables • Static methods take the parameters and compute/calculate something
Public Methods • A public method is a method that could be used by other classes • In other words another class within the program would be able to use the public method by simply calling them
Void Methods • A void method is basically a method that contains the keyword ‘void’ • Void methods perform an actions but do not output any sort of result
Instance Methods • This is the default type of method • Instance methods use instance variables (a set variable) • These methods are associated with objects of the program
What is an Object? • In life we have objects all around us such as tables, chairs, desks ect… • Every objects has its attributes such as a table has four legs and a straight table top. All tables have this in common – common attributes • Objects also have a behaviour for examples dogs bark, eat and breath. All dogs have these behaviours in common
Object Oriented Programming • Java is an object oriented programming language, programs in java also take into account different objects with attributes and behaviours • For example if we want to draw a triangle on Java we would give it the attributes of the objects – size and colour • We could also give it a behaviour and make it move around the screen
Object characteristics • Objects have two main characteristics; • Attributes = how the object looks and what it is - set as an instance variable in Java • Behaviour = what action it would do – set as a method in Java
Creating a Program • We will be using an architects plan to find out the following certain attributes of different rooms • So a common object we have is a room, so we would need to create an object room using a class.
//create a type room by listing the attributes of a room class Room{ double width; double height; double length; } class HomeDemo1{ public static void main (String args[]){ //creating an object of type room //object is a room with the name bedroom1 Room bedroom1 = new Room(); double volume; //give bedroom1 its attributes bedroom1.width = 4; bedroom1.height = 3; bedroom1.length = 5; //find the volume of the room volume = bedroom1.width * bedroom1.height *bedroom1.length; System.out.println("Volume of Bedroom1 = " + volume); } }
Outputs • What is the output of the program? Volume of Bedroom1 = 60.0 • Which is the class that is creating the data type for the room? Class Room { double width; double height; double length }
Creating two Objects • In the next program we will be creating two objects • The two objects in this program will be; • Bedroom1 (width 5, height 3, length 5) • A Kitchen (width 3, height 3, length 4) • Create a NEW program to output the volume of both bedroom1 and the kitchen
We need a Method • As we can see in out second program the following code is repeated twice; • When we have repeated code we realise that we need to create a method, this would eliminate the repeated code volume = bedroom1.width * bedroom1.height * bedroom1.length;
Our new Method STEP ONE • Our new method would need to work out the volume • We will name this method ‘getVolume’ to understand what the method will be doing • In the class Room write the following method //method to calculate the volume double getVolume(){ volume = width * height * length; return volume; }
Eliminating Code STEP TWO • Remove the following lines of code from your program; Double volume; 1 volume = bedroom1.width * bedroom1.height * bedroom1.length; 2 volume = kitchen.width* kitchen.height* kitchen.length; 3
Replacing Code STEP THREE • Replace the following code; • With; System.out.println("Volume of Bedroom1 = " + volume); System.out.println("Volume of kitchen = " + volume); System.out.println("Volume of Bedroom1 = " + bedroom1.getVolume()); System.out.println("Volume of Kitchen = " + kitchen.getVolume());
Add a Living Room • Add a living room to your program with the following attributes; • Width = 5 • Height = 3 • Length = 6
Area • Create a method called getArea • This method should return the area • So now your program should • Hold three objects • Two methods • Output the Volume of all objects • Output the Area of all objects Area = ((width * height) * 2) + ((length * height * 2) + (width * length));