Final answer:
Abstract classes in Java cannot be instantiated and may contain both abstract and non-abstract methods. Options 1 and 3 are true, reinforcing abstract classes as blueprints for other classes and allowing for mixed method definitions.
Step-by-step explanation:
In Java programming, abstract classes are a fundamental concept that govern how classes and objects interact and are designed. When we consider the provided options about abstract classes, the answer can be found through understanding their definition and how they are used in Java. Here are the correct answers based on that understanding:
- They cannot be instantiated – This is true. Abstract classes are meant to be a blueprint and cannot be turned into objects on their own.
- They can have both abstract and non-abstract methods – Abstract classes are allowed to have a mix of methods, some of which can be fully defined (non-abstract) while others are only specified (abstract) and meant to be implemented by subclasses.
Therefore, the correct answers from the provided list are options 1 and 3. They emphasize that an abstract class cannot create instances and can contain various types of methods.