Define the attributes of “Abstract Classes.” Give detailed examples.

computer science



The topic of discussion for this week is:

Discuss the terms “Abstract Classes” and “Genericity.”

Suggestions to maximize effort:

1.     Define the attributes of “Abstract Classes.” Give detailed examples.

2.     Define the attributes of “Genericity.” Give detailed examples.

3.     Discuss all circumstances that each could occur in the compiler process.

4.     Discuss the impact of each circumstance.

The discussion coverage should be relating to compiler design. It is important to go beyond general definitions of these terms, and explore the implementation in terms of how compilers can be designed to handle these topics. Please provide examples and label the examples if needed (i.e. Example #1, Example #2, and so on) Please be as detailed and as thorough as possible. Discuss in a scholarly manner. Visualizations of compiler components would always help. Minimal of 6 paragraphs are required. Each paragraph should have at least 5-10 sentences.




Here are some optional materials that hopefully can offer some thoughts. You are encouraged to go above and beyond and research other course-related information that may interest you. Please feel free to share your findings with the class during discussion.


How to use Generics and Abstract Classes: Applied Example with Hibernate/JSF DAOs

Object-Oriented Programming


Object-oriented programming concepts: Polymorphism and interfaces




After completing this module, you will be able to do the following:

  • Concepts of Object Oriented Techniques
  • Objects and Object Classes
  • Inheritance
  • Memory Organization and Method Calls
  • Constructors


Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction, encapsulation,messaging, modularity, polymorphism, and inheritance. As hardware and software became increasingly complex, manageability often became a concern. Researchers developed object-oriented programming in part to address common problems by strongly emphasizing discrete, reusable units of programming logic. The technology focuses on data rather than processes, with programs composed of self-sufficient modules ("classes"), each instance of which("objects") contains all the information needed to manipulate its own data structure ("members"). This is in contrast to the existing modular programming that had been dominant for many years that focused on the function of a module, rather than specifically the data, but equally provided for code reuse, and self-sufficient reusable units of programming logic,enabling collaboration through the use of linked modules (subroutines).


  • Compiler Design: Virtual Machines: Chapter 5


Instruction Files

Related Questions in computer science category