Assignment on polymorphism

Assignment Help Basic Computer Science
Reference no: EM13780024

Polymorphism

Objectives

In this lab assignment, students will learn:

- How to design and define interface

- How to implement methods declared in interface

- How to implement polymorphism

Goals

In this lab assignment, students will demonstrate the abilities to:

- Design and define interface

- Implement methods declared in interface

- Implement polymorphism

Grading

- Define interface (30 pts)
- Define base / derived classes (40 pts)
- Define tester program to implement polymorphism (30 pts)

In this lab you will create an interface inheritance hierarchy and perform polymorphism in a tester program. The following is the simplified UML for the hierarchy:

<<Interface>>

IShape
+ Function ToString() As String
+ Function CalculateArea(): Double
TwoDShape
- xValue: Integer
- yValue: Integer
+ Sub New(Integer, Integer)
+ Property X():Integer
+ Property Y():Integer
+ Function CalculateArea():Double
+ Function ToString():Strinbg

Square

- sideValue: Double
+ Sub New(Integer, Integer,Double)
+ Property Side():Double
+ Function CalculateArea():Double
+ Function ToString():Strinbg

Circle

- radiusValue: Double
+ Sub New(Integer, Integer,Double)
+ Property Radius():Double
+ Function CalculateArea():Double
+ Function ToString():Strinbg

1. Create a Console Application Project called "InterfaceApp".

2. Rename the "Module1.vb" as "IShapeTester.vb"

3. Add a class definition, modify it to an Interface named "IShape" which has two members:

a. Function ToString() : String

b. Function CalculateArea() :Double

4. Add a class definition named "TwoDShape", which is an abstract base class, the following members should be included:

a. xValue: Integer ---- instance variable

b. yValue: Integer ---- instance variable

c. Sub New(Integer, Integer) ---- constructor

d. Property X():Integer ---- get and set xValue

e. Property Y():Integer ---- get and set yValue

f. Function CalculateArea():Double ---- "MustOverride" function and implements IShape's CalculateArea() function

g. Function ToString() ---- Overrides ToString() function in Object and implements IShape's method, display x and y coordinate on the console window (use the following definition)

Public Overrides Function ToString() As String Implements IShape.ToString

Return ("X-coordinate: " & vbTab & xValue & vbCrLf & "Y-coordinate: " & vbTab & yValue)

End Function

5. Add a class definition named "Circle", which inherits from "TwoDShape" class and includes the following members:

a. radiusValue: Double --- instance variable, radius of a circle

b. Sub New(Integer, Integer, Double) --- constructor

c. Property Radius():Double --- get and set radiusValue

d. Function CalculateArea():Double ---- override and implement the abstract method in base class Shape, calculate area of a circle using:
radiusValue * radiusValue * 3.14

e. Function ToString() ----- use Convert.ToString(Me.GetType()) to display the type of shape, then display X and Y coordinates by calling base class's ToString() function, finally, display radius value on console window (use the following definition)

Public Overrides Function ToString() As String

Return (Convert.ToString(Me.GetType()) & vbCrLf & MyBase.ToString() & vbCrLf & "Radius: " & vbTab & String.Format("{0:N2}", radiusValue))

End Function

6. Add a class definition named "Square", which inherit from "TwoDShape" class and include the following members:

a. sideValue: Double --- instance variable, side of a square

b. Sub New(Integer, Integer, Double) --- constructor

c. Property Side():Double --- get and set sideValue

d. Function CalculateArea():Double ---- override and implement the abstract method in base class Shape, calculate area of a square using: sideValue * sideValue

e. Function ToString() ----- use Convert.ToString(Me.GetType()) to display the type of shape, then display X and Y coordinates by calling base class's ToString() function, finally, display side value on console window (use the following definition)

Public Overrides Function ToString() As String

Return (Convert.ToString(Me.GetType()) & vbCrLf & MyBase.ToString() & vbCrLf & "Side: " & vbTab & String.Format("{0:N2}", sideValue))

End Function

7. Perform polymorphism in the Module "IShapeTester.vb":

a. Declare 4 objects:

s1: a circle object ( center at (2, 4) and radius = 3.0)

s2: a square object (center at (1, 5) and side = 4.0)

s3: a circle object (center at(3, 6) and radius = 3.5)

s4: a square object (center at(6, 3) and side = 6.0)

b. Put these 4 objects into an IShape array

c. Use a "For" loop to traverse the array and let each object do the following:

i. Call ToString() and let it display shape type, x and y coordinates, radius or side value

ii. Call CalculateArea() and let it calculate area of a shape, display the area on console window.

8. Here is the sample output window, your program should be performed similarly like this:

Reference no: EM13780024

Questions Cloud

Responsibilities to foster an infants language development : Parents and Early Childhood Teachers have unique opportunities and responsibilities to foster an infants' and toddlers' language development.
Explain virtual patient encounters and e-visits : Virtual Patient Encounters and E-Visits, Utilizing the Electronic Health Record to Improve Patient Outcomes
Problem related to the article critique : Directions: Initially review the issues currently occurring in the hospitality industry, such as economic challenges, market competition, staffing needs, and the like. Then select an issue of your choice and find two articles pertaining to hospita..
How should the international monetary fund operate : How should the IMF (international monetary fund) operate? Why is the topic of interest to you in this course? How do you want to answer the question or issue you are pursuing?
Assignment on polymorphism : Assignment on Polymorphism, How to design and define interface, How to implement methods declared in interface
Theories of identity or freedom : Identify a film, book, television show, or other form of media/art that involves characters/narrators reflecting upon the nature of identity and the self. Cite the media using correct APA citation.
Brochure for a new employee working : Create a brochure for a new employee working at a suicide prevention hotline. The brochure must include the following:
Discuss the implications of this information for parents : Discuss the implications of this information for parents and teachers. Plan a specific learning activity to be implemented in a childcare or early learning setting which supports each of the three stages discussed.
Write a research paper about obesity in usa : Write a research paper about "Obesity in USA".

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd