Inheritance Concept Explanation

Hi,
Java does not support multiple inheritence (atleast extending multiple classes).
I wanted to know why java has come up with such idea which violates OOPS concept?
I know that there can be confliction with overriding methods with same name and signature from different classes. But this might occur once in centuries cases, and not even that. Then why java has ommited such a beautiful concept?
Definitely there has to be some other reason.
Please discuss on it.
Thanks and regards
Gopal Krishan Sharma
[email protected]
[email protected]

> i have been taught that think of java as the
implementers of OOPS...
Not by a long shot. OOP predates Java by roughly thirty years.
> Tell me what could be the possible harm in this case...
-- BEGIN QUOTE
Interfaces and the 'diamond problem'
One justification of interfaces that I had heard early on was that they solved the "diamond problem" of traditional multiple inheritance. The diamond problem is an ambiguity that can occur when a class multiply inherits from two classes that both descend from a common superclass. For example, in Michael Crichton's novel Jurassic Park, scientists combine dinosaur DNA with DNA from modern frogs to get an animal that resembled a dinosaur but in some ways acted like a frog. At the end of the novel, the heros of the story stumble on dinosaur eggs. The dinosaurs, which were all created female to prevent fraternization in the wild, were reproducing. Chrichton attributed this miracle of love to the snippets of frog DNA the scientists had used to fill in missing pieces of the dinosaur DNA. In frog populations dominated by one sex, Chrichton says, some frogs of the dominant sex may spontaneously change their sex. (Although this seems like a good thing for the survival of the frog species, it must be terribly confusing for the individual frogs involved.) The dinosaurs in Jurassic Park had inadvertently inherited this spontaneous sex-change behavior from their frog ancestry, with tragic consequences.
This Jurassic Park scenario potentially could be represented by the following inheritance hierarchy:
          Animal
       Frog   Dinosaur
         FrogasaurThe diamond problem can arise in inheritance hierarchies like the one shown in Figure 1. In fact, the diamond problem gets its name from the diamond shape of such an inheritance hierarchy. One way the diamond problem can arise in the Jurassic Park hierarchy is if both Dinosaur and Frog, but not Frogosaur, override a method declared in Animal. Here's what the code might look like if Java supported traditional multiple inheritance:
abstract class Animal {
    abstract void talk();
class Frog extends Animal {
    void talk() {
        System.out.println("Ribit, ribit.");
class Dinosaur extends Animal {
    void talk() {
        System.out.println("Oh I'm a dinosaur and I'm OK...");
// (This won't compile, of course, because Java
// only supports single inheritance.)
class Frogosaur extends Frog, Dinosaur {
}The diamond problem rears its ugly head when someone tries to invoke talk() on a Frogosaur object from an Animal reference, as in:
Animal animal = new Frogosaur();
animal.talk();Because of the ambiguity caused by the diamond problem, it isn't clear whether the runtime system should invoke Frog's or Dinosaur's implementation of talk(). Will a Frogosaur croak "Ribbit, Ribbit." or sing "Oh, I'm a dinosaur and I'm okay..."?
The diamond problem would also arise if Animal had declared a public instance variable, which Frogosaur would then have inherited from both Dinosaur and Frog. When referring to this variable in a Frogosaur object, which copy of the variable -- Frog's or Dinosaur's -- would be selected? Or, perhaps, would there be only one copy of the variable in a Frogosaur object?
In Java, interfaces solve all these ambiguities caused by the diamond problem. Through interfaces, Java allows multiple inheritance of interface but not of implementation. Implementation, which includes instance variables and method implementations, is always singly inherited. As a result, confusion will never arise in Java over which inherited instance variable or method implementation to use.
-- END QUOTE
http://www.javaworld.com/javaworld/jw-12-1998/jw-12-techniques.html

Similar Messages

  • Log4j level inheritance concept doubt

    log.properties file
    log4j.debug=true
    log4j.rootLogger=ERROR, A1
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=%m%n
    log4j.logger.logging.basics=WARN, cs3
    log4j.appender.cs3=org.apache.log4j.RollingFileAppender
    log4j.appender.cs3.layout=org.apache.log4j.PatternLayout
    log4j.appender.cs3.File=c:\\logas.txt
    log4j.appender.cs3.layout.ConversionPattern=%m%n
    log4j.appender.cs3.MaxFileSize=100KB
    log4j.appender.cs3.MaxBackupIndex=1
    log4j.additivity.com.durasoft.logging=false
    log4j.logger.RAM=INHERITED, B1
    log4j.appender.B1=org.apache.log4j.RollingFileAppender
    log4j.appender.B1.layout=org.apache.log4j.PatternLayout
    log4j.appender.B1.File=c:\\trylog.txt
    log4j.appender.B1.layout.ConversionPattern=%m%n
    log4j.appender.B1.MaxFileSize=100KB
    log4j.appender.B1.MaxBackupIndex=1
    package logging.basics;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.util.Properties;
    import org.apache.log4j.BasicConfigurator;
    import org.apache.log4j.FileAppender;
    import org.apache.log4j.Logger;
    import org.apache.log4j.PatternLayout;
    import org.apache.log4j.PropertyConfigurator;
    import org.apache.log4j.spi.RootLogger;
    public class LogBasics
         public static void main(String[] args) throws IOException
              Properties prop = new Properties();
              FileInputStream stream = new  FileInputStream("logging\\Resources\\log.properties");
              prop.load(stream);
              PropertyConfigurator.configure(prop);
              Logger temp = Logger.getLogger("RAM");
              RootLogger root = (RootLogger)                     Logger.getRootLogger();
              temp.error("h1i"); 
              temp.warn("hel1lo");
    }Refering to above code and properties file(in bold font), the logger named "RAM" didnt inherit from logging.basics package(which it lies), but inherits only from root, even though level and appenders for logging.basics package is specified in properties file.
    I doubt, because according to level inheritance concept, the logger must inherit from parent level(assuming parent is not null).
    Here parent ,is logging.basics for LogBasics class,so RAM logger must inherit from logging.basics as logging.basics is defined in properties file.
    But,its not happening?Why it is so?
    2) also please explain me what getLogger does when configured using property file
    Thank you.

    phanikrishnait wrote:
    Hai
    I have 3 class class A,B,C in multi level as below the method present in class A should only be accessed in A and B .Should not be visible in C and notaccessible for C class object.Java does not support that in general. In this specific case, if A and B are in the same package, and C is in a different package, and the method in question has package-private access level (not public, private, or protected).
    However, if you're doing this, you almost certainly have a design flaw. My guess is you're trying to use inheritance for code sharing, which is not what it's for.

  • Java design concept explanation

    Hi,
    I need help with java concept to make my design better. I have 2 classes which are for different purpose but perform a common step in between.
    For example: I need to deal with groups and users. The two classes at a point check if users are present in more than one group and if they do they display a message.
    I am confused as to how to fit in this step with out replicating the code. If i make a 3rd class with this step and instatiate this class object in first two will it be constly on resources (as in memoryt)? or is there a better way to represent this situation.
    hope my explanation was fine.
    Thanks in advance.

    Why not just decide which class you want to implement your common tasks in and give the second class visibility to it.
    myBigClass bigClass = new myBigClass();
    mySmallClass smallClass = new mySmallClass(bigClass);Then calls to your shared code can be wrappers in your smallClass that just reference the code in your bigClass;

  • No Calrity on Multiple Inheritance Concept Of Java..!

    In SCJP Book by "karty serie " .
    In Java
    a subclass of class Object, (except of course class Object itself). In other words, every
    class you'll ever use or ever write will inherit from class Object. You'll always have
    an equals method, a clone method, notify, wait, and others, available to use.
    Whenever you create a class, you automatically inherit all of class Object's methods.
    A class cannot extend more than one class. That means one parent per class. A
    class can have multiple ancestors, however, since class B could extend class A, and
    class C could extend class B, and so on. So any given class might have multiple
    classes up its inheritance tree, but that's not the same as saying a class directly
    extends two classes.
    class PlayerPiece extends GameShape, Animatable { // NO!
    // more code
    If the above code is invalid, is it legal to write the code like ...
    class PlayerPiece extends GameShape, Object { // NO!
    // more code
    Thanks In Advance
    Kiran

    I think I can help straighten out what is confusing you.
    Let's say you have a class B that extends class A, and a class C that extends class B.
    Then class C implicitly extends class A, but java does not allow you to make that explicit.
    So, yes, in a way, class C does subtype both class A and B, but it only directly subclasses class B. The subtyping of class A is implicit.
    The following should demonstrate some patterns that should help clear things up:
    class A { } 
    // This automatically is a subclass of Object,
    // you don't need to specify that.
    // or
    class A extends Object { } 
    // This is legal, but not necessary, since a class
    // that doesn't extend anything else implicitly extends Object
    class B extends A { } 
    // This directly subclasses class A,
    // and implicitly subtypes Object
    // but
    class B extends A, Object { } 
    // This is NOT legal in java, and will not compile,
    // even though the previous code would
    // make class B a subtype of Object
    class C extends A { } 
    // Again, a direct subclass of A,
    // and indirect subclass of Object
    class D extends B, C { } 
    // This is NOT legal in java, and is what people
    // usually mean when they say that multiple
    // inheritance is prohibited.  In this case, you
    // are attempting to subclass two different
    // classes, where one is *not* a subtype of
    // another.  There is no work around to make
    // this happen in java, but you can use interfaces
    // and composition to get a similar effect with a
    // bit of glue code to hook things together.
    // For example:
    interface X {
      public void doX();
    class XImpl implements X {
      public void doX() {
        // do something
    interface Y {
      public void doY();
    class YImpl implements Y {
      public void doY() {
        // do something else
    class Z implements X, Y {
      private X x = new XImpl();
      private Y y = new YImpl();
      public void doX() {
        x.doX();
      public void doY() {
        y.doY();
    // This is basically what goes on behind the scenes
    // in languages like C++ that do support MI

  • Question regd Inheritance Concept in 00 design

    In Inheritance,when a subclass extends a Superclass,
    the subclass is a specialized version of the superclass.Right?
    class B extends A{
    So,B is a specialized version of A.
    Supposing that class B also implements an Interface:
    class B extends A implements iFace{
    So now:
    Is B a specialized version of class A or a specialized version of an interface?
    Please can anyone answer?

    Both. You can treat it as class B, class A or
    interface iFace.
    This is how you get multiple interface inheritancein
    Java.Agree on the implmentation, disagree on the theory.
    B is a specialized version of A, but the interface is
    more a facet of B.No. In "class B extends A implements C" B is-a C just as it is-a A.
    For instance, a suburu imprezza is a specialized form
    of a car - but when my wife's brother add a load of
    rubbish to it, these are interfaces that it is
    implementing. It might be implementing the
    'SillyExpensiveAlloyWheels' interfaceThat's a poor design. You wouldn't have a care implement an interface for it's accessories as it doesn't make sense to say a particular type of care is-a SillyExpensiveAlloyWheels (ignoring the singular/plural mismatch).
    Look at the Collections framework.
    LinkedList is a list. It is a Collection. It is a Serializable. It is a Cloneable. It is an Object.
    An interface that a class implements is not just a "facet" of that class.

  • Cannot allocate memory - Concept Explanation Please

    Hello all,
    Just wanted to confirm something.
    I compile a helloword class and the javac does it job.
    Now when I am preparing a larger program from ant like so: /usr/local/ant/bin/ant prepareI get:Buildfile: build.xml
    [property] java.io.IOException: java.io.IOException: Cannot allocate memory
    [property]     at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)
    [property]     at java.lang.ProcessImpl.start(ProcessImpl.java:65)So more memory is required for different compilations of programs, right?
    Is there a way, I can allocate all (most) memory to the javac compiler?
    If I have some of my theory and terminology mixed please correct me.
    Thanks all
    ---------Key Info-----------
    java version "1.5.0_15"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_15-b04)
    Java HotSpot(TM) Server VM (build 1.5.0_15-b04, mixed mode)
    OS: Fedora 7

    Thanks Peter will look into this now.
    Before I find the tut/HOWTO is there any chance of the swap file damaging my server? I mean worst case scenario would be...?
    Just had a look at "top" and it says "swap" on there, is that referring to something eles: (sucks to be a noob!)
    top - 12:32:34 up 14 min,  1 user,  load average: 0.00, 0.00, 0.00
    Tasks:  35 total,   2 running,  33 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0% us,  0.1% sy,  0.0% ni, 99.9% id,  0.0% wa,  0.0% hi,  0.0% si
    Mem:   8140596k total,  8087960k used,    52636k free,    73708k buffers
    Swap: 12578884k total,    28956k used, 12549928k free,  1705984k cachedEdited by: abshirf2 on Oct 2, 2008 7:32 PM
    Edited by: abshirf2 on Oct 2, 2008 7:33 PM

  • Concept explanation with some examples

    hi,
    what is a debit and credit note with some examples
    regards
    sudharshan

    Hello.
    In AP:
    Debit Memo-Is a record you enter to debit your supplier. It decreases your debt to the supplier. It can be issued for reasons like disagreement about prices. When you pay an invoice to your supplier you can include the debit memo so the payment will be in a lower amount.
    Credit Memo-It works the same way but normally it is issued by your supplier.
    In AR
    Debit Memo-It works like a normal invoice but it can be issued out of the normal invoicing system, to correct an invoice, for example. It increases the debt from you customer.
    Credit Memo-It works on opposite of the debit memo.
    Octavio

  • Issue in "Inheritance" New GL

    Hi Experts,
    Could you help me solve the issue.
    I feel inheritance is not working properly for me.
    I have checked the inheritance check box in doc splitting activation.
    When I post a FB50 document with 2 line items, one line item having profit center and segment, in GL simulation view, I am not able to see PC and segment populated in 2nd line item.
    I hope this should happen using "inheritance" concept.
    SAme issue with FB60 and FB70.
    It works well only if I mention splitting rules. PC and segment get inherited id splitting rules exists.
    If no splitting rules, 2nd line item is not inheriting PC and segment of 1st line item even if inheritance is checked and splitting active.
    Could you please help me if I am missing any config or concept.
    So it not "Inheritance" check box issue?
    Thanks

    Hi,
    Activate Scenarios PC & Seg for document splliting.
    Assign Scenarios and Customer Fields to Ledgers
    IMG à Financial Accounting (New)à Financial Accounting Global Settings (New)à Ledgers à Ledgerà Assign Scenarios and Customer Fields to Ledgers
    plz let us know still you have any issue.
    Regards
    Viswa

  • How does role inheritance work in GRC

    Hi All,
    We are implementing GRC PC 10.0 where we have activated Role inheritance for organization in Maintain Authorization Customization Node in SPRO.
    What i understood is by activating the role inheritance for organizations, you can specify that authorizations are to be passed on to lower levels of the organization. However I need to know if inheritance also helps in picking up the recipients while doing planning activity, I have two queries in this regard:
    For eg :
    1) if we have a Control Tester role maintained at subprocess and control level both and if a User is assigned to subprocess for Control tester role then in that case User will be also be mapped to all the control beneath the subprocess for Control tester role due to inheritance concept ..correct? and while planning for that particular control, does user maintained at subprocess level will be picked as a recipient ?
    2) A Control tester gets mapped at the subprocess level. This means that all controls under that subprocess would show this tester as inherited from the subprocess. However, if we do not want the inherited tester to perform the test, and instead map a tester at the control level, the inherited tester still appears. IN this case, will only the tester mapped at the control level receive the work inbox item for the control test (as this overrides the inherited tester), or will the inherited tester also receive it?
    Regards,
    Shikha

    The interface only needs loaded if one of its members
    is accessed (although this is probably implemented
    differently on different JVMs).No.
    The interface is loaded.
    It is not initialized. There is a difference. See section 12 of the JLS.
    Assuming the above is true, it appears the following
    is happening
    1. C is loaded because w is accessed from DD�s main .
    This loading causes �w� to be echoed and then �x� to
    be echoed since loading the interface initializes the
    members which in turn call the echo method (I am
    assuming that this only happends when the members are
    not �constants�).
    2. The main method then echoes the w variable (which
    is �w�).
    Having said this, I would think this code would behave
    differently on different JVMs so I am not sure how it
    could even be a �good� theoretical question (unless
    this is documented in the JLS).It is in the JLS.
    Also, loading the the interface may not really be what
    is happening; the initialization code may be in-lined
    in the class (this could be tested by printing w twice
    in main � really strange behaviour).No. It can't inline the initilization of one class in another class.

  • Cost Center Inheritance from Org Unit

    Good day all,
    Can someone please advise regarding cost center inheritance from org units?
    I understand the inheritance concept, however simple need to know if the CCenter is added to the org unit via A011 relationship, does the system physically create a A011 relationship on the position inhertiting the cost center from the org or does the system simply pick up the realtionship from the org unit relationsip for use in IT0001 field KOSTL (cost center)?
    Thanks guys, have a lovely day!
    Christy

    Hi Christy,
    As we know cost centre(K) is an unusual object in OM.Two type of objects internal  whose master record are in database table beloging to sap erp hcm and eexternal object whose master data belong to other application areas.Cost centre is an external object that is used to represent origin of costs.Inheritance concept is on the basis of whoch cost centre are assigned in org plan.
    directly related cost centre is called master cost centre and they are made via A011 cost centre assignment relationsip.they can be made at org unit,position or work centre and nornmally its org unit that common.Org unit at the top are asisgned the cost centre as a best practise so that all the org units below or reporting will inherit the same.
    Similarly multiple cost centre assignments can also e made through 1018 infotype(cost centre distribution).Inheritance also applied to them aswell.
    Hope this helps.
    No Worries
    KG

  • Use of inheritance....

    hi friends we are all say inheritance is one of the important concept in oops that will support ed by java,it will reduce the code length but in real world programming most of the cases we dont use inheritance concepts for user defined classes... My doubt is why we dont use
    inheritance is real time programming...?

    hi friends we are all say inheritance is one of the
    important concept in oops that will support ed by
    java, it will reduce the code length but in real worldI agree with the people here when they disagree with you on this.
    programming most of the cases we dont use inheritance
    concepts for user defined classes... Interesting. I thought every user-defined class is derived from Object. Besides that, maybe we often don't extend random classes all the time because we understand the OO design principles...
    My doubt is why
    we dont use
    inheritance is real time programming...?I assume it's because most real-time programs are written in C or other structured languages. But I'm sure there are exceptions.

  • Events & Listeners

    Hi, I'm trying toget a handle on events and listeners and am studying the following classes for this purpose. I'm pretty comfortable with understanding regular applets, but am confused by a couple of things in the following.
    1.) How is the Dots class able to instantiate a Point object if the Dots program does not import a Point class?
    My guess here is that the Point class is a sub class of the MouseEvent class, which is made available to the program via the java.awt.event.* import statement. If this is correct, is this an example of the inheritance concept?
    2.) How is the Dots class able to instantiate a DotsMouseListener object (in the init() method) if the Dots program doesn't import the DotsMouseListener class?
    My guess here is that since the constructor in the DotsMouseListener class takes as its parameter the Dots applet, the Dots class is somehow able to instantiate DotsMouseListener objects. If this is true, though, I don't get it.
    Thanks for your help . . .
    DOTS.JAVA
    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;
    public class Dots extends Applet
       private final int APPLET_WIDTH = 200;
       private final int APPLET_HEIGHT = 100;
       private final int RADIUS = 6;
       private Point clickPoint = null;
       //  Creates a listener for mouse events for this applet.
       public void init()
          DotsMouseListener listener = new DotsMouseListener(this);
          addMouseListener(listener);
          setBackground (Color.black);
          setSize (APPLET_WIDTH, APPLET_HEIGHT);
       //  Draws the dot at the appropriate location.
       public void paint (Graphics page)
          page.setColor (Color.green);
          if (clickPoint != null)
             page.fillOval (clickPoint.x - RADIUS, clickPoint.y - RADIUS,
                            RADIUS * 2, RADIUS * 2);
       //  Sets the point at which to draw the next dot.
       public void setPoint (Point point)
          clickPoint = point;
    DOTSMOUSELISTENER.JAVA
    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;
    class DotsMouseListener implements MouseListener
       private Dots applet;
       //  Stores a reference to the applet.
       public DotsMouseListener (Dots applet)
          this.applet = applet;
       //  Determines the point at which the mouse is clicked, sets the
       //  point in the applet, then forces the applet to repaint.
       public void mouseClicked (MouseEvent event)
          Point clickPoint = event.getPoint();
          applet.setPoint (clickPoint);
          applet.repaint();
       //  Provide empty definitions for unused event methods.
       public void mousePressed (MouseEvent event) {}
       public void mouseReleased (MouseEvent event) {}
       public void mouseEntered (MouseEvent event) {}
       public void mouseExited (MouseEvent event) {}
    }

    >
    1.) How is the Dots class able to instantiate a Point
    object if the Dots program does not import a Point
    class?It imports java.awt.*, which contains Point
    The * implies that you are importing all classes in the java.awt package.
    My guess here is that the Point class is a sub class
    of the MouseEvent class, which is made available to
    the program via the java.awt.event.* import statement.
    If this is correct, is this an example of the
    inheritance concept?This is not an example of inheritance, it is Composition. A basic explanation used very often is is a and has a
    Is a = Inheritance
    Has a = Composition
    eg. Man is a Mammal. So, you can say that Man inherits from the base class Mammal.
    On the other hand,
    Man has a Dog
    Dog also inherits from Mammal. But as related to Man, it is Composition.
    2.) How is the Dots class able to instantiate a
    DotsMouseListener object (in the init() method) if the
    Dots program doesn't import the DotsMouseListener
    class?You need to import a class/package only if the class is in a different package(directory) than the class in which it is being used.
    i.e., If Dots and DotListener are in the same directory, say C:\java\code then you do not need to import DotListener.
    The reason you need to import the API classes is that they are not in the same directory as your code.
    Hope This Helps

  • How to use COM DLL in LabWindows

    Hello
    I have a COM .dll which looks like that when opened with dll export viewer:
    I would like to use the Get4AxisPos function in LabWindows.
    I understood that, as I only have the .dll, the only way of calling these functions are with the LoadLibrary() and GetProcAddress() functions.
    My problem is that the Get4AxisPos function is not of type Exported Function but COM Method so I don't know how to use it in my LabWindows project!
    My questions are: Is it possibleto use this dll in Labwindows? If yes how?
    Thanks
    Solved!
    Go to Solution.

    Hi ,
    I am new to C++ and COM  .
    i need to implement a client application in C(lab windows CVI) , server is a c++ COM object.
    steps followed by me
    ---> accessed the registered COM object with Labwindows CVI active x controller template,output was a c file which is implementation of the class names in COM (interfaces).
    I can use majority of the functions directly from the generated, but i need to implement some event functions like message box events and then use it.
    I have seen one method of accessing in C++ client sample ,
    which implements Queryinterface function...takes the IID_Unknown as input and returns interface pointer(inhereted static_castof the required class, uses static_cast for that) as output.
    when i try to follow up the same in c , i am lost  with the inheritance concept.
    In short i need to send IID Unknown to the Queryinterface function and should get the interface pointer of message box type or other class type ...
    Sorry for the long mail,Please guide me
    Thanks in advance ,
    Satish

  • About array cast.

    dear all
    could someone tell me what's wrong with the following codes?
    Object objarr[]
    = {new Integer(1), new Integer(2)};
    Integer[] intarr = (Integer [])objarr;
    it throws out a java.lang.ClassCastException when i ran it. but doesn't the objarr actually represents a Integer array?
    regards
    Yang Liu

    In Java, all objects are by default of Object type. That means an Integer object is of Object type. Similarly a String object is of Object type.
    But if I give you an object of type Object, can u absolutely say whether it is an Integer or a String (ofcourse assuming u don't use relection etc) ? No you cannot..
    Simlarly when you have a Object array, you can put anything into that array, a String or an Integer etc. So u cannot be sure that an Object array always contains only Integer... That is y u get the class cast exception.....
    Ofcourse, this is just the inheritance concept... A BMW is a type of car.. but a car needn't be a type of BMW... it could be a Toyota instead or someting else...
    Integer[] intarr = {new Integer(1), new Integer(2)};
    Object[] objarr = (Object[]) intarr;
    the above code works well.. since all Integer (s) are of Object type in Java....
    Hope this helps

  • Java is a Partially Object-Oriented Programming (True/False)

    Hi everybody,
    Many of them saying that Java is not purely Object-Oriented Programming.
    I am very much confusing on that, so please help me to confirm that "Java is a Partially Object-Oriented Programming Language".

    JAVA_NV wrote:
    gopivista wrote:
    Hi everybody,
    Many of them saying that Java is not purely Object-Oriented Programming.
    I am very much confusing on that, so please help me to confirm that "Java is a Partially Object-Oriented Programming Language".Java is not purely Object-Oriented Programming,for this two reasons are there
    one is we cant create Objects to the primitive data types and there is no multiple Inheritance concept .While there are many definitions of "purely object oriented," and no on widely accepted standard, I've never heard one that requires multiple inheritance. That would NOT be a reason why Java is not fully OO.

Maybe you are looking for

  • For compression - Acrobat X Pro vs PrimoPDF

    I need an application that I can use to take an existing PDF file and compress it. Right now, I cannot afford Acrobat X Pro. I have read that PrimoPDF is a free alternative. Can anyone shed any technical or compatibility light as to why I should not

  • BPM  11G Installation

    Bpm Experts , Did any one used the Pre-built Virtual Machine for SOA Suite and BPM Suite 11g to avoid the installation locally ? how difficult it is

  • Looking for high quality 3rd party TTS voices for OSX

    Looking for suggestions for commercial, high quality, 3rd party TTS voices. In the Windows world I was a happy Ivona user, but Ivona does not support Apple products. The best OSX TTS voices I've found so far are from Infovox ... better than the built

  • So frustrated about swf movies not playing....any help?

    Seems to be I have a very familiar problem with a multitude of similar posters and online questions about why a .swf project file will properly embed and preview within Dreamweaver CS4 when previewing in browser but when loaded to my server the .swf

  • Is there a solution to parental controls blocking https?

    I have seen many posts regarding parental controls blocking any website that has SSL or https, but they are for older versions of OS X.  Is there a solution for the latest version of Mavericks?  I am amazed that the problem has persisted as long as t