Skip to main content

Explain features of OOP. Write a program to add two objects of a class using friend function. The class consists of hour and minute as its data member, input(), sum() and output() as its member functions.

 Object-Oriented programming (OOP) is a programming paradigm based on the concept of objects, which are instances of classes that encapsulate data and behavior. OOP provides a number of features that make it a popular choice for developing large, complex software systems. Here are some of the key features of OOP:

  1. Encapsulation: OOP allows you to encapsulate the implementation details of an object and hide them from the outside world. This helps to ensure that the object is used correctly and can be modified without affecting other parts of the program.
  2. Abstraction: OOP provides a high level of abstraction by allowing you to create complex data structures and algorithms. Abstraction allows you to simplify the complexity of your program by hiding unnecessary details an focusing on what is important.
  3. Inheritance: OOP allows you to create new classes that are based on existing classes. This is known as inheritance, and it allows you to reuse existing code and create more specialized classes.
  4. Polymorphism: OOP allows you to create functions that can take objects of different types and perform different actions depending on the type of object. This is known as polymorphism, and it allows you to write more flexible and reusable code.

/*a program to add two objects of a class using friend function. The class consists of hour and minute as its data member, input(), sum() and output() as its member functions.*/

#include <iostream>
using namespace std;

class Time {
private:
    int hour;
    int minute;
public:
    Time() {
        hour = 0;
        minute = 0;
    }
    void input() {
        cout << "Enter the hour: ";
        cin >> hour;
        cout << "Enter the minute: ";
        cin >> minute;
    }
    void output() {
        cout << "Time is " << hour << " hours " << minute << " minutes." << endl;
    }
    friend Time sum(Time t1, Time t2);
};

Time sum(Time t1, Time t2) {
    Time t3;
    t3.hour = t1.hour + t2.hour;
    t3.minute = t1.minute + t2.minute;
    if (t3.minute >= 60) {
        t3.hour++;
        t3.minute -= 60;
    }
    return t3;
}

int main() {
    Time t1, t2, t3;
    cout << "Enter time 1: " << endl;
    t1.input();
    cout << "Enter time 2: " << endl;
    t2.input();
    t3 = sum(t1, t2);
    t1.output();
    t2.output();
    t3.output();
    return 0;
}

In this program, we define a class called "Time" that contains two private data members: 'hour' and 'minute'. We also define three member functions: 'input()', 'output()' and a friend function called 'sum()'.

The 'input()' function takes user input for the 'hour' and 'minute' data members. The 'output()' function outputs the 'hour' and 'minute' values.

The 'sum()' function is defined as a friend function, which means that it can access the private data members of the 'Time' class. It takes two objects of type "Time" as arguments and returns a new 'Time' object that is the sum of the two input objects.

In the 'main()' function, we create three 'Time' objects 't1', 't2' and 't3'. We call the 'input()' function to take user input for 't1' and 't2', and we call the 'sum()' function to add the two objects and store the result in 't3'. Finally, we output the three 'Time' objects using  the 'output()' function.

Comments

Popular posts from this blog

Write a program using the algorithm count() to count how many elements in a container have a specified value.

 Here's an example program using the count() algorithm to count the number of occurrences of a specific value in a vector container: #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() {     vector<int> numbers = { 2, 5, 3, 7, 8, 5, 1, 5, 4 };          // count the number of occurrences of the value 5 in the vector     int count = count(numbers.begin(), numbers.end(), 5);          cout << "The number of occurrences of 5 in the vector is: " << count << endl;          return 0; } Output: The number of occurrences of 5 in the vector is: 3 Explanation: The program starts by creating a vector named numbers that contains several integer values. The count() algorithm is used to count the number of occurrences of the value 5 in the numbers vector. The function takes three arguments: the beginning and end iterators of...

What are Stub and Skeleton in Distributed Application? Explain its function with block diagram.

 Stub and Skeleton are two important components of distributed applications. A distributed application is a software system that runs on multiple computers connected through a network. It allows users to access resources and services on different computers as if they were on a local computer. In a distributed application, a client program on one computer sends a request to a server program on another computer. The server program processes the request and sends a response back to the client program. Stub and Skeleton help to facilitate this communication between the client and server programs. A Stub is a client-side proxy that represents the remote object on the client machine. It acts as a gateway for the client to communicate with the server. When a client invokes a method on the Stub, it marshals the arguments and sends them to the server over the network. The Stub then waits for the server to send a response. When the response is received, the Stub unmarshals the data and retur...

Explain the lifecycle of Servlet with block diagram.

 The lifecycle of a Servlet can be divided into several stages. Here's a block diagram that illustrates the different stages: Servlet API: The Servlet API provides a standard set of interfaces and classes for creating and interacting with Servlets. It is typically included in the web application's classpath as a JAR file. Servlet Container: The Servlet Container is a web server or application server that implements the Servlet API. It provides a runtime environment for executing Servlets and manages their lifecycle. Servlet Class: The Servlet Class is the Java class that implements the javax.servlet.Servlet interface. It contains the logic for processing HTTP requests and generating HTTP responses. init(): The init() method is called once when the Servlet is first loaded by the Servlet Container. It is used for initialization tasks, such as setting up database connections, loading configuration settings, or initializing other resources that will be used by the Servlet. service(...