DAVID - LAB Excercise 7
DAVID - LAB Excercise 7
DAVID - LAB Excercise 7
ITPROG3
(Object Oriented Programming)
EXERCISE
7
Dealing with Polymorphism and Inheritance
I. Objectives:
Cognitive
a) understand the effects of access modifiers in an inheritance relationship
b) understand the concept of Java abstract Classes
Psychomotor:
a) construct a program using 'extends' keyword to define an inheritance relationship
b) compile and debug the error of the program
Affective
a) appreciate the concept behind this experiment
Polymorphism is the ability of different objects to respond to the same message in different
ways. This means that different objects can have very different method implementations for
the same message.
Method Overloading is the process of declaring methods with the same name but different
parameter types.
Method Overriding allows a subclass to redefine methods of the same name from a
superclass
2. 2.1. Create class Person with attributes name, age and gender.
2.2. Create class Student with attribute grade and,
2.3. Create class Teacher with attribute salary.
Note:
Class Student and Teacher must inherit from Person.
In main class, create and print two students and one teacher.
Apply inheritance, setter and getter.
Sample Output:
Student 2:
Name: Rachel
Age: 15
Gender: F
Grade: 2.50
3. Give a definition of a class named Arithmetic whose methods are three add() and multiply()
and one subtract() and divide().
Parameter for add() and multiply() should be two, three and four int respectively.
Parameter for subtract() and divide() should be two int.
Applying method calling in the main(), test your program by calling the following
methods:
add(1,3)
add(1,3,4,5)
multiply(2,3,4)
multiply(1,1)
subtract(3,1)
divide(5,2)
1.
2.
package main;
import java.util.*;
public class Main {
public static void main(String[] args) {
System.out.println("DATABASE");
System.out.println(" ");
System.out.println("1. Teacher");
System.out.println("2. Student");
System.out.print("Choice: ");
Scanner scan = new Scanner(System.in);
int choice = scan.nextInt();
System.out.println(" ");
if(choice == 1){
Teacher x;
x = new Teacher();
System.out.print("Name: ");
Scanner scann = new Scanner(System.in);
x.name = scann.nextLine();
System.out.println(" ");
System.out.print("Age: ");
Scanner scan2 = new Scanner(System.in);
x.age = scan2.nextInt();
System.out.println(" ");
System.out.print("Gender: ");
Scanner scan3 = new Scanner(System.in);
x.gend = scan3.next().charAt(0);
System.out.println(" ");
System.out.print("Name: ");
Scanner scann = new Scanner(System.in);
y.name = scann.nextLine();
System.out.println(" ");
System.out.print("Age: ");
Scanner scan2 = new Scanner(System.in);
y.age = scan2.nextInt();
System.out.println(" ");
System.out.print("Gender: ");
Scanner scan3 = new Scanner(System.in);
y.gend = scan3.next().charAt(0);
System.out.println(" ");
else{
System.out.println("Invalid Input");
}
}
}
---------------------------------------
package main;
public class Teacher extends Person{
}
--------------------------------
package main;
public class Student extends Person{
}
------------------------------------
package main;
public class Person {
String name;
int age;
char gend;
double grade = 2.0;
double salary = 10000;
}
-------------------------------------
OUTPUT:
3.
package num2;
----------------------------
package num2;
OUTPUT:
IV. QUESTION AND ANSWER: