Design A Class Named Pet Which Should Have The Following Fil

Design A Class Named Pet Which Should Have The Following Fieldsname

Design a class named Pet, which should have the following fields: Name – The name field holds the name of a pet. Type – The type field holds the type of animal that is the pet. Example values are “Dog”, “Cat”, and “Bird”. Age – The age field holds the pet’s age. The Pet class should also have the following methods: setName – The setName method stores a value in the name field. setType – The setType method stores a value in the type field. setAge – The setAge method stores a value in the age field. getName – The getName method returns the value of the name field. getType – The getType method returns the value of the type field. getAge – The getAge method returns the value of the age field.

Once you have designed the class, design a program that creates an object of the class and prompts the user to enter the name, type, and age of his pet. This data should be stored in the object. Use the object’s accessor methods to retrieve the pet’s name, type, and age and display this data on the screen. You are to submit the following for the assignment: Submit your JAVA source code that you generated from RAPTOR with comments added to each line or where necessary to explain program flow. Also submit the RAPTOR file (flowchart) of your working program. Make sure you run it to make sure it is error free and does what it is supposed to. You can use the generate dropdown to create example JAVA code based on your working logical flow chart to see what the code would look like. Remember to follow the guidelines of good program design. Make sure to use meaningful variable names and include comments as needed.

Paper For Above instruction

Design A Class Named Pet Which Should Have The Following Fieldsname

Design A Class Named Pet Which Should Have The Following Fieldsname

The task involves creating an object-oriented Java program that models a pet with attributes such as name, type, and age. The program requires defining a class named Pet with specific private fields and methods for setting and retrieving these attributes. Following the class definition, a separate main program should instantiate a Pet object, prompt the user for pet details, store the data via setter methods, and then display the gathered information using getter methods.

Introduction

Object-oriented programming (OOP) in Java allows developers to model real-world entities through classes and objects. The design of the Pet class exemplifies encapsulation, a core principle in OOP, by keeping attributes private and exposing them through public accessor methods. This design ensures data integrity and promotes maintainability of code. The subsequent program demonstrates how user input can interact with such an object, allowing dynamic data entry and display.

Design of the Pet Class

The Pet class will contain three private fields:

  • name: a String representing the pet's name
  • type: a String representing the pet's type (e.g., Dog, Cat, Bird)
  • age: an int representing the pet's age

It will include public methods to set and get each attribute:

  • setName(String name): assigns a value to the name field
  • setType(String type): assigns a value to the type field
  • setAge(int age): assigns a value to the age field
  • getName(): returns the name of the pet
  • getType(): returns the type of the pet
  • getAge(): returns the age of the pet

Implementation of the Pet Class


public class Pet {

// Private fields: encapsulation of data

private String name;

private String type;

private int age;

// Constructor

public Pet() {

// Initialize fields with default values

name = "";

type = "";

age = 0;

}

// Mutator method for name

public void setName(String name) {

this.name = name;

}

// Mutator method for type

public void setType(String type) {

this.type = type;

}

// Mutator method for age

public void setAge(int age) {

this.age = age;

}

// Accessor method for name

public String getName() {

return name;

}

// Accessor method for type

public String getType() {

return type;

}

// Accessor method for age

public int getAge() {

return age;

}

}

Main Program for User Interaction

The main program will perform the following steps:

  1. Create a Scanner object for user input.
  2. Create a Pet object.
  3. Prompt the user to enter the pet's name, type, and age.
  4. Use setter methods to store this data in the pet object.
  5. Retrieve and display the pet's details using getter methods.

import java.util.Scanner;

public class PetApp {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in); // Create Scanner for input

Pet myPet = new Pet(); // Instantiate Pet object

// Collect user input for pet details

System.out.print("Enter the name of your pet: ");

String nameInput = scanner.nextLine();

myPet.setName(nameInput); // Set pet's name

System.out.print("Enter the type of your pet (e.g., Dog, Cat, Bird): ");

String typeInput = scanner.nextLine();

myPet.setType(typeInput); // Set pet's type

System.out.print("Enter the age of your pet: ");

int ageInput = scanner.nextInt();

myPet.setAge(ageInput); // Set pet's age

// Display pet information

System.out.println("\nPet Details:");

System.out.println("Name: " + myPet.getName());

System.out.println("Type: " + myPet.getType());

System.out.println("Age: " + myPet.getAge() + " years");

scanner.close(); // Close Scanner

}

}

Conclusion

This program demonstrates fundamental principles of object-oriented programming in Java, including class design, encapsulation, and user interaction. The Pet class encapsulates pet attributes effectively, and the main program interacts with the user to create a dynamic, flexible application. Proper use of accessor and mutator methods ensures data integrity, making the code both robust and easy to maintain.

References

  • Deitel, P. J., & Deitel, H. M. (2017). Java: How to Program. Pearson.
  • Horstmann, C. S. (2018). Core Java Volume I-II. Prentice Hall.
  • Gosling, J., Joy, B., Steele, G., & Bracha, G. (2014). The Java Language Specification. Oracle.
  • Oracle. (2023). Java Tutorials: Common Tasks - Create a Class and Class Members. Oracle Documentation. https://docs.oracle.com/javase/tutorial/java/javaOO/index.html
  • Schildt, H. (2019). Java: The Complete Reference. McGraw-Hill Education.
  • Liang, Y. D. (2017). Introduction to Java Programming and Data Structures. Pearson.
  • Bates, B. (2020). Intro to Java Programming. Pearson.
  • Ims, A., & Warner, J. (2021). Beginning Java Programming. Wadsworth Publishing.
  • SELINA, N. (2019). Object-Oriented Programming with Java. Packt Publishing.
  • Java.com. (2023). Learn Java — Free Interactive Java Tutorials. Oracle. https://java.com/en/learn/