A Person Has A Telephone , Address , Name , Email The Clerk class will have an e
ID: 3841634 • Letter: A
Question
A Person Has A Telephone, Address, Name, Email
The Clerk class will have an equals() method. It must override the equals method of the parentclass(Person). The equals method in the Person class to override the equals method in the Object class. We considered the difference between using == and equals() method with String objects.
Any class can, and should, define its own equals method. So, what does it mean that one clerk equals another clerk? We can define this such as two Clerk objects are equal, if they have the same salary and grade. So, clerk1.equals(clerk2) will return true if their salary and grade are "equal" by the definition. You might notice that when comparing String objects, you must use the equals method defined in the String class, as opposed to the relational == operator.
The equals method MUST accept an Object as its parameter.
Explanation / Answer
//person.java is parent and clerk child class
package chefff;
import java.io.*;
public class Person {
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
private String name;
private int age;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public Person Describedetails()
{
return this;
}
// TODO Auto-generated constructor stub
}
class Clerk extends Person
{
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Clerk [grade=" + grade + ", name=" + name + ", empId=" + empId + ", desigination=" + desigination
+ ", salary=" + salary + "]";
}
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
public String getDesigination() {
return desigination;
}
public void setDesigination(String desigination) {
this.desigination = desigination;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
private int grade;
private String name;
private int empId;
private String desigination;
private int salary;
public Person Describedetails()
{
return this;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}
PersonDemo.java
//main program
import java.util.Scanner;
import java.util.*;
public class PersonDemo{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Scanner sc1 = new Scanner(System.in);
Person [] p= new Clerk[2];
for (int i = 0; i < p.length; i++) {
System.out.println("Enter grade:");
int grade= sc.nextInt();
System.out.println("Enter empId:");
int empId= sc.nextInt();
System.out.println("Enter name:");
String name= sc.next();
System.out.println("Enter desigination:");
String desigination = sc1.nextLine();
System.out.println("Enter salary:");
int salary= sc.nextInt();
p[i]= new Clerk();
p[i].setGrade(grade);
p[i].setSalary(salary);
p[i].setDesigination(desigination );
p[i].setEmpId(empId);
p[i].setName(name);
}
for (int i = 0; i < p.length; i++) {
//== for integer comparison
if(p[i].getGrade()==p[i].getSalary())
{
System.out.println("they are equal");
}
}
for (int i = 0; i < p.length; i++) {
//equals for string comparison
if(p[i].getName().equals("name"))
{
System.out.println("names are equal");
}
}
// for displaying all details in string format
ArrayList<Person> p11 = new ArrayList<Person>();
if (p11.size() > 0) {
for (Person p1 : p11) {
System.out.println(p1.toString());
System.out.println(p.toString());
}
}
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.