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

What is the meaning of \n and \t in C language?
(New line) -- We use it to shift the cursor control to the new line. \t (Horizontal tab) -- We use it to shift the cursor to a couple of spaces to the right in the same line.
Munawar
0 0
5
What is the difference between n=1 and n==1 in the C language?
'=' is ASSIGNMENT operator , where as '==' is COMPARISON operator. int a=7; assigns the variable a an integer value 7 , where as a==7; checks if the VALUE of a is EQUAL to 7.
Soujanya
0 0
8
What does %d mean in the C programming language?
signed decimal integer %d is not the only format specifier in C to represent integers. To be precise, %d is used to represent a signed decimal integer.
Vikas
0 0
6
Can you assign a different address to an array tag?
Nope, because Array Tag/Name is an alias or name to the first location of the array. It doesn't have any memory of its own (pointers do have their own memory).
Sivaganesh
0 0
6
Are C and C++ a prerequisite for learning Java?
yes..syntax of java is same as a c and c++..so it the advantage if you know any one of these.
Mrunal
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

Bit wise operators in C
Bit Wise Operators Bit Wise operators are manipulates of individual bits with in a word of memory. The bit wise operators can be divided in to three general category. One’s Complement...

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...

Creating First Program Using C Language
Step 1: Install and setup Turbo C compiler on your computer. Step 2: Open Turbo C from your Desktop or Programs menu. Select “File” from menu bar and select option “New”. Step...

Programing Languages Learning Tricks
You want to learn that new language or library or framework as soon as possible, right? That’s understandable. Fortunately, there are a handful of tips that can help you to better retain all of that...
H

Harshal G.

0 0
0

Operators in C
Operators in C Operator: An operator is a symbol that tells the compiler to perform certain mathematical or logical calculations. Operators are used in programs to manipulate data and variables. The...

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