When do you absolutely have to declare a class as abstract (as opposed to free-willed educated choice or decision based on UML diagram)?

Asked by Last Modified  

Follow 0
Answer

Please enter your answer

Home Tutor

When the class itself is inherited from an abstract class, but not all base abstract methods have been overridden.
Comments

Software Developer and Trainer with 10 years of experience

I hope you are aware of what Abstract Class is . Lets say an Example. You are developing a Library that Detects User Interaction with the device and enable the developer to define their own response to the user. Let me Name it as an InputHandler Class. In this case, you are defining functions for...
read more
I hope you are aware of what Abstract Class is . Lets say an Example. You are developing a Library that Detects User Interaction with the device and enable the developer to define their own response to the user. Let me Name it as an InputHandler Class. In this case, you are defining functions for each user interaction line key press, mouse click, etc i.e EventDetection. Now When you define the InputHandler class. You cannot declare the functions that will be called on the appropriate user interaction, But you cannot define it, because the response is different for different applications that use the library. In this case you can make the InputHandler abstract by declaring the EvnetDetecting functions virtual. Hope you understood ... read less
Comments

Tutor

Imagine you have some set of inter related classes like mango , apple ,banana all these classes are having same functionality so instead of creating again repeated methods in these classes i will create a more generalized method fruits and in that i define the idea means how to do it and later on sub...
read more
Imagine you have some set of inter related classes like mango , apple ,banana all these classes are having same functionality so instead of creating again repeated methods in these classes i will create a more generalized method fruits and in that i define the idea means how to do it and later on sub classes will implement those ideas so in a company many people will work for 2 or 3 years and leave the company we cant take the code of them what they have written i mean to say in projects many people mainly project managers create abstract classes and later on sub ordinates will use or override the function of that idea which is present in abstract class like that it works.when project are very big we just modify the code in abstract class it will automatically modified in sub class it is like kind of relationship eg : mango is kind of fruit like that and once i declare a class abstract i have to override it if i declare it virtual then it is upto me to override or not .Now coming to interface when classes are not related like cycle , train , bus means bus is belonging to automobile class and cycle to some other class but these different classes want to implement common functionality then interface is used and it is used to overcome the draw back of multiple inheritance as i can implement multiple interfaces and there is another drawback in inheritance using base class object i cannot call the sub class function to overcome that abstract classes are used .Try this stuff using code you will understand better thank you read less
Comments

View 1 more Answers

Related Questions

Can include files be nested?
Yes. Include files can be nested any number of times. As long as you use precautionary measures, you can avoid including the same file twice. In the past, nesting header files was seen as bad programming...
Himangi
0 0
7
How do you print an address?
int main(){ int a=5; printf("Address of variable a is: %d",&a); return 0; }
Prakash
2 0
6
Can anybody provide me error free coding for graphic program in C??? Animated Smiley program Rotating Fan progran Sunrise program
#include graphics.h #include conio.h #include stdlib.h #include dos.h main() { int gd = DETECT, gm,area,temp1,temp2,left =25,top=75; void *p; initgraph(&gd,&gm,”C:\TC\BGI”); setcolor(YELLOW); circle(50,100,25); setfillstyle(SOLID_FILL,YELLOW); floodfill(50,100,YELLOW); setcolor(BLACK); setfillstyle(SOLID_FILL,BLACK); fillellipse(44,85,2,6); fillellipse(56,85,2,6); ellipse(50,100.205,335,20,9); ellipse(50,100.205,335,20,10); ellipse(50,100.205,335,20,11); area...
Gayu
0 0
8
What is the difference between a string and an array?
String is array of characters terminated with null.
Rakes
How do I learn C programming easily?
Just follow kanitkar book of c programming for beginners
Harsh
0 0
5

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Static and dynamic libraries
A library is a package of code that is meant to be reused by many programs. A static library (also known as an archive) consists of routines that are compiled and linked directly into your program. When...

Basic Concepts of Web Designing
An introduction to domain names, web servers, and website hosting 1)What is the web? In a nutshell, the web is a whole bunch of interconnected computers talking to one another. The computers (on the...

C Program-String Palindrome
//Header files #include<stdio.h>#include<conio.h>#include<string.h> //Main function void main(){ char mystring; int i,length; int flag=0; //Function for clearing screen clrscr();...

Understanding Computer Science Concepts with Images and Videos..
All Computer science concepts relating to programming and software development are only virtual. It cannot be practically shown as a hardware parts of a computer. But for better understanding it should...

C and C++ programming with memory level debugging
Understanding C and C++ programming by using memory level debugging. Step 1: Understand the Memory map of C executable Step 2: Start memory level debugging using popular IDE Step 3: Find the memory...

Recommended Articles

Lasya Infotech is a Hyderabad based IT training institute founded in 2016 by O Venkat. Believing in his innovation, passion and persistence and with a diverse blend of experience, he started his brainchild to deliver exemplary professional courses to aspiring candidates by honing their skills. Ever since the institute envisions...

Read full article >

Brilliant Academy is one of the reputed institutes for B.Tech tuition classes. This institute is specialised in delivering quality tuition classes for B.E, Engineering - all streams and Engineering diploma courses. Incorporated in 2012, Brillant Academy is a brainchild of Mr Jagadeesh. The main motto of the academy is to...

Read full article >

Whether it was the Internet Era of 90s or the Big Data Era of today, Information Technology (IT) has given birth to several lucrative career options for many. Though there will not be a “significant" increase in demand for IT professionals in 2014 as compared to 2013, a “steady” demand for IT professionals is rest assured...

Read full article >

Hadoop is a framework which has been developed for organizing and analysing big chunks of data for a business. Suppose you have a file larger than your system’s storage capacity and you can’t store it. Hadoop helps in storing bigger files than what could be stored on one particular server. You can therefore store very,...

Read full article >

Looking for C Language Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you