1. Define a class named MyClass. The class has two member variables varl and var2 Write the definition of the class, including: 1) Constructor 2) Methods that return values of varl and var2, respectively 3) Methods that set values of varl and var2, respectively. 4) __str_method that returns values of varl and var2 method that returns values of varl and var2 5) Outside the class, write code that creates an object of MyClass, say, obj, that initializes varl and var2 with user input values, respectively 6) Change varl and var2 of obj to var1 **2 and var2**2, respectively. 7) Print varl and var2 of the object. 2. In the above class (MyClass), overload___add___ __eq___ and _lt_operators as follow: a) sum = obj1 + obj2 sets sum. varl to be obj1. varl + obj2. varl, and sum. var2 to be obj1. var2 + obj2. var2 b) obj1 == obj2 only if obj1. varl == obj2. varl and obj1. var2 == obj2. var2 c) obj1

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter10: Introduction To Inheritance
Section: Chapter Questions
Problem 13RQ
Question

2nd question. python

## MyClass Definition and Operator Overloading

### 1. Define a Class Named `MyClass`

The class has two member variables, `var1` and `var2`. Here is the definition of the class, including:

1. **Constructor**
2. **Methods that return values** of `var1` and `var2`, respectively.
3. **Methods that set values** of `var1` and `var2`, respectively.
4. **`__str__` method** that returns values of `var1` and `var2`.
5. Outside the class, write code that creates an object of `MyClass`, say, `obj`, that initializes `var1` and `var2` with user input values, respectively.
6. Change `var1` and `var2` of `obj` to `var1**2` and `var2**2`, respectively.
7. Print `var1` and `var2` of the object.

### 2. Operator Overloading in `MyClass`

Overload the `__add__`, `__eq__`, and `__lt__` operators as follows:

a) `sum = obj1 + obj2` sets `sum.var1` to be `obj1.var1 + obj2.var1`, and `sum.var2` to be `obj1.var2 + obj2.var2`.

b) `obj1 == obj2` only if `obj1.var1 == obj2.var1` and `obj1.var2 == obj2.var2`.

c) `obj1 < obj2` only if `obj1.var1 + obj1.var2 < obj2.var1 + obj2.var2`.

### Task

Write code to test your operators.

This description outlines the structure and functionalities of the `MyClass`, including how to initialize, manipulate, and compare its objects using operator overloading.
Transcribed Image Text:## MyClass Definition and Operator Overloading ### 1. Define a Class Named `MyClass` The class has two member variables, `var1` and `var2`. Here is the definition of the class, including: 1. **Constructor** 2. **Methods that return values** of `var1` and `var2`, respectively. 3. **Methods that set values** of `var1` and `var2`, respectively. 4. **`__str__` method** that returns values of `var1` and `var2`. 5. Outside the class, write code that creates an object of `MyClass`, say, `obj`, that initializes `var1` and `var2` with user input values, respectively. 6. Change `var1` and `var2` of `obj` to `var1**2` and `var2**2`, respectively. 7. Print `var1` and `var2` of the object. ### 2. Operator Overloading in `MyClass` Overload the `__add__`, `__eq__`, and `__lt__` operators as follows: a) `sum = obj1 + obj2` sets `sum.var1` to be `obj1.var1 + obj2.var1`, and `sum.var2` to be `obj1.var2 + obj2.var2`. b) `obj1 == obj2` only if `obj1.var1 == obj2.var1` and `obj1.var2 == obj2.var2`. c) `obj1 < obj2` only if `obj1.var1 + obj1.var2 < obj2.var1 + obj2.var2`. ### Task Write code to test your operators. This description outlines the structure and functionalities of the `MyClass`, including how to initialize, manipulate, and compare its objects using operator overloading.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
JQuery and Javascript
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Systems Architecture
Systems Architecture
Computer Science
ISBN:
9781305080195
Author:
Stephen D. Burd
Publisher:
Cengage Learning