Write short notes on any two a) Association b) Multi-threading c) Access modifiers
Q.) Write short notes on any two a) Association b) Multi-threading c) Access modifiers
Subject: Object Oriented Programming and MethodologyAssociation:
- Definition: Association is a relationship between two classes or objects that allows them to communicate with each other.
- Types of Associations:
- One-to-One: In a one-to-one association, each object in one class is associated with exactly one object in the other class.
- One-to-Many: In a one-to-many association, each object in one class can be associated with multiple objects in the other class.
- Many-to-Many: In a many-to-many association, each object in one class can be associated with multiple objects in the other class, and vice versa.
- Association is implemented using references or pointers between objects.
- Association allows objects to interact with each other and share data.
Multithreading:
- Definition: Multithreading is a technique that allows multiple tasks or threads to execute concurrently within a single process.
- Benefits of Multithreading:
- Improved performance: Multithreading can improve performance by allowing multiple tasks to execute simultaneously, taking advantage of multiple cores or processors.
- Increased responsiveness: Multithreading can make an application more responsive by allowing it to handle multiple requests or events concurrently.
- Resource sharing: Multithreading allows multiple threads to share the same memory and other resources, reducing memory usage and improving efficiency.
- Types of Threads:
- User-level threads: User-level threads are managed by the application itself and are not visible to the operating system.
- Kernel-level threads: Kernel-level threads are managed by the operating system and are scheduled by the underlying kernel.
- Multithreading is implemented using operating system primitives such as threads and mutexes.
- Multithreading allows for concurrent execution of multiple tasks, improving performance and responsiveness.
Access Modifiers:
- Definition: Access modifiers are keywords that control the accessibility of classes, methods, and variables within a program.
- Access Modifiers in Java:
- public: The public access modifier allows members to be accessed from anywhere within the program.
- protected: The protected access modifier allows members to be accessed from within the same package and its subclasses.
- default (or no modifier): The default access modifier allows members to be accessed from within the same package only.
- private: The private access modifier allows members to be accessed only within the same class.
- Access modifiers are used to control the visibility and accessibility of members in a program, improving encapsulation and security.