ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

10 Java design pattern Interview questions and answers for Senior developers

Updated on August 18, 2012

Design pattern interview questions answers in Java

design patterns are integral part of any Java interview be it on fresher level, senior level or any experienced level like 2 years, 4 years, 6 years etc, you will always get some Java design pattern interview question to answer. For those programmers who don't know What is design pattern in Java, it's a standard way of solving some preexisting problem. As you agree that in software development, code re-usability is the biggest advantage but same time concept and design re-usability is also an important factor to consider. Design patterns provide tried and tested way of solving problem without compromising key things like flexibility, extensibility and code quality. In last couple of post we have seen 10 tricky Java interview questions for experienced programmer and Top Java Concurrency interview question, while in this post we see some popular design pattern interview questions for Java developers


10 Java design pattern interview questions

Here is my list of Java design pattern interview questions, these questions are based upon popular design patterns like Singleton, Decorator, Factory and Observer and basic OOPS principles e.g. Inheritance, Abstraction, Encapsulation, Polymorphism and Data hiding. I have also included some Concurrency design pattern questions like Producer Consumer problem.

Write code to solve producer consumer problem in Java?

You can answer this design pattern interview question in two ways by writing code using wait and notify mechanism or by solving producer consumer pattern using BlockingQueue in Java. later is easier to write and preferred post Java 5 era.

What is difference between abstraction and encapsulation in Java

Another popular design principles related question in Java. main difference between abstraction and encapsulation in Java is that abstraction enforces separating general thing to specific things by abstracting them while encapsulation allows internal details of class to encapsulated inside the class, so that future change on how you implement internals of class should not affect rest of systems.

What is difference between Inheritance and Composition in Java?

One more design pattern question in Java which is based upon fundamental of Object oriented programming. Inheritance means extending class while Composition means including another class as field, Inheritance follows IS-A relationship wile Composition follows HAS-A relation ship like Mango IS a Fruit which means we can write Mango class by extending Fruit class to get all common features of fruits like eatable, shape, taste etc. This is an example of Inheritance while Bathroom HAS Tiles an example of Composition.

Why Composition is favored over Inheritance ?

Famous Java design interview questions , read Joshua Bloach Effective Java book.

What is Singleton pattern in Java? What is double checked locking on Singleton ?What is lazy initialization of Singleton

Check out 10 Java singleton interview question for answers of these questions.

how do you write Thread-safe Singleton in Java

What is Observer design patter in Java? Give an Example ?

What is benefit of Observer design pattern in Java?

What is decorator design pattern in Java

What is Builder design pattern in Java

What is Factory design pattern in Java

How to write immutable class in Java

These were some of the design pattern and design principle question which frequently asked in Java interviews. I have tried to provide answers of these design pattern question which ever I know, you can also do Some research on Google to find answers of these questions before going for Java interview.


Comments

    0 of 8192 characters used
    Post Comment

    working

    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, hubpages.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://hubpages.com/privacy-policy#gdpr

    Show Details
    Necessary
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Features
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Marketing
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Statistics
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)