wood burning stoves 2.0*
The moose likes Java in General and the fly likes Is java 100% Object Oriented Language ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "Is java 100% Object Oriented Language ?" Watch "Is java 100% Object Oriented Language ?" New topic
Author

Is java 100% Object Oriented Language ?

Arulkumar Gopalan
Ranch Hand

Joined: Oct 13, 2003
Posts: 104
Hi Ranchers,
I would like to know the concrete explanation for these two questions.
Is java 100% Platform independent language ? - No
Is java 100% Object Oriented Language ? - No
Thanks..............


Anbudan & Mahalo,<br />Arul<br /> <br />-Not a sun certified Java professional :-)
Howard Kushner
author
Ranch Hand

Joined: Sep 19, 2003
Posts: 361
If you are truly looking for answers rather than arguments then,
  • check the web site http://java.sun.com
  • I consider a language as OO if it supports A.P.I.E. (see below)


  • Abstraction
  • Polymorphism
  • Inheritance
  • Encapsulation


  • "I made a mental note of that, but I lost my mind."
    [ October 24, 2003: Message edited by: Howard Kushner ]

    Howard Kushner<br />IBM Certified Enterprise Developer - WebSphere Studio Application Developer V5.0<br />IBM Certified Advanced System Administrator - WebSphere Application Server V5.0<br />IBM Certified Solution Developer - Web Services with WebSphere Studio V5.1<br /><a href="http://www.amazon.com/exec/obidos/tg/detail/-/1931182108/" target="_blank" rel="nofollow">Developing J2EE Applications with WebSphere Studio</a> my Certification Study Guide for IBM Test 287
    Vinod Sinha
    Ranch Hand

    Joined: Oct 16, 2003
    Posts: 43
    the explanation for your first question according to me is :
    The JVM is what makes java look like platform independent , so the
    JVM is different for different platforms.
    Secondly something like Garbage collection is highly platform dependent.
    even on the same platform you are not able to predict the time at
    which garbage collector runs.
    Arulkumar Gopalan
    Ranch Hand

    Joined: Oct 13, 2003
    Posts: 104
    I am looking for a concrete answers..
    Vivek Nidhi
    Ranch Hand

    Joined: Aug 10, 2003
    Posts: 133
    On my view there are two things that are not platform independent in Java
    1)Thread Scheduling
    2)Garbage Collections
    The Thread Scheduling is mapped to the native OS, and the other one alogorithm will be different in different platforms
    Regs
    Vivek Nidhi
    [ October 24, 2003: Message edited by: Vivek Nidhi ]
    [ October 24, 2003: Message edited by: Vivek Nidhi ]
    Dan Chisholm
    Ranch Hand

    Joined: Jul 02, 2002
    Posts: 1865
    Java has primitive values that are not objects; so one could argue that Java is not 100% object oriented. The Smalltalk programming language has no primitive values; so one could argue that it is 100% object oriented.
    I don't believe the above arguments are important.


    Dan Chisholm<br />SCJP 1.4<br /> <br /><a href="http://www.danchisholm.net/" target="_blank" rel="nofollow">Try my mock exam.</a>
    Corey McGlone
    Ranch Hand

    Joined: Dec 20, 2001
    Posts: 3271
    As Dan pointed out, Java is NOT fully object oriented. In order for Java to be 100% OO, primitives would also need to be objects, which they are not.
    Also, the Java programming language appears to be platform-independent, but that is only due to the underlying JVM. That layer effectively isolates any Java application from the underlying OS. When an API call must be made, the JVM handles it. As the JVM is directly interfacing with the underlying OS, the JVM must be tailored to the OS. Hence, we have various JVM's for various OS's. Depending upon whether or not you wish to include the JVM as "Java" or if you with "Java" to refer sepcifically to the programming language itself, you could argue that Java is or is not platform independent. For that question, it's pretty close to impossible to state that Java is or is not platform independent.
    However, this material is NOT covered on the exam and I am moving this thread to Java in General (Intermediate). If you'd like to continue this conversation, please do so in that forum.


    SCJP Tipline, etc.
    Ilja Preuss
    author
    Sheriff

    Joined: Jul 11, 2001
    Posts: 14112
    You should also do a search at the saloon for these topics, as they are *very* frequently asked.


    The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
    Gary Mann
    Ranch Hand

    Joined: Jun 05, 2003
    Posts: 37
    Interesting stuff, although perhaps only from an academic point of view. Given the arguments, does this mean there is no such thing as a platform independent language?
    fred rosenberger
    lowercase baba
    Bartender

    Joined: Oct 02, 2003
    Posts: 11499
        
      16

    Isn't this debate kind of meaningless unless everyone can agree on EXACTLY what "platform independant language" and "object oriented" mean? Without defining the terms first, all else else is irrelavent.
    according to one of my books, one of the basic tenats is that to be a pure OO language, "everything must be an object". well, java clearly fails that with the primitive types.
    what does "platform independant" mean? usually, i've heard it defined as "write/compile once, run anywhere". Java (from a programmers perspective) does satisfy this. but somebody had to write all the JVMs, which clearly are NOT independant.
    I guess my main point is that you can't ask for concrete answers without giving concrete definitions of your terms...


    There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
    Thomas Paul
    mister krabs
    Ranch Hand

    Joined: May 05, 2000
    Posts: 13974
    Platform independent?
    I code and unit test on Windows 2000, then move to HP-UNIX for integration and acceptance testing, and then to Sun Solaris for production. I don't have to change a single line of code. That is platform independent in my book.


    Associate Instructor - Hofstra University
    Amazon Top 750 reviewer - Blog - Unresolved References - Book Review Blog
     
    I agree. Here's the link: http://aspose.com/file-tools
     
    subject: Is java 100% Object Oriented Language ?