General discussion

What is Java and can I do without it?

Occasionally I get a prompt to update Oracle Java on my computer with Windows 7 and since this has been a regular routine for my system to update like Adobe Flash player or Adobe Reader, I have always without a thought just followed the prompt and updated it, never questioning it as to whether I even need this at all. As a matter of fact, I don't know what it does for my system. I hope you don't find my question naive, but do I even need it? If I choose not to update it, will it leave my system crippled somewhere or possibly vulnerable to anything? Can I live without it and is it possible to remove it altogether? Please advise. Thank you.

--Submitted by Spencer W.
Discussion is locked
Reply to: What is Java and can I do without it?
PLEASE NOTE: Do not post advertisements, offensive materials, profanity, or personal attacks. Please remember to be considerate of other members. If you are new to the CNET Forums, please read our CNET Forums FAQ. All submitted content is subject to our Terms of Use.
Reporting: What is Java and can I do without it?
This post has been flagged and will be reviewed by our staff. Thank you for helping us maintain CNET's great community.
Sorry, there was a problem flagging this post. Please try again now or at a later time.
If you believe this post is offensive or violates the CNET Forums' Usage policies, you can report it below (this will not automatically remove the post). Once reported, our moderators will be notified and the post will be reviewed.
- Collapse -
JAVA History

Since you seem not to know a lot about what JAVA is, I'll try to just cover the basics. I am too lazy to look up dates but I'm sure that you can if that is important. There have been many types of computers out there. You have the "Windows" computers that are derivatives of the old IBM PC line of computers. There are Apple computers (MAC) that used to be running on Motorola processors that were never compatible with the PC. There are the newer Macs that run on Intel processors. There are LINUX machines and there are various cell phone platforms. There also were/are computers that were UNIX systems (Solaris, HP_UX, etc.). The bottom line is that if you wanted to create an application that ran on "everything", it would have been a lot of work. JAVA is a "virtual machine" concept that, if programs are written to 'run' on this virtual machine, all you had to do was run a standard program through a process in JAVA and the execution would be similar or identical regardless of what hardware and operating system you are running. That is, ideally. Since JAVA relates to the applications that you have on your computer rather than your real hardware and OS, the answer to your questions is more defined by what applications you are actually running.

If you are not running any JAVA applications, then you don't need JAVA on your machine. In the early days of JAVA, the installation of applications automatically installed JAVA at the correct version for the application. If you uninstalled JAVA, the application you downloaded or licensed would stop working. Today, Oracle owns JAVA run-time so it is more of a separate upgrade rather than being controlled by the applications that you run and, yes, you could wind up with multiple versions of JAVA if you run some older software that require it.

So, how do you know if your applications require JAVA? If you had the documentation for all of your software items, the system requirements section might specify JAVA version x.xx.xx.
Too difficult? P-I-T-A? Don't have the information? The only way to tell is to uninstall JAVA and see what happens. Of course, first, I'd download the latest JRE to your HDD just in case stuff stops working. For example, Symantec/Norton products usually use JAVA as a basis. Other products as well. Not every product does; some are based on other development systems such as Microsoft .NET and a few other platforms.

As for using an older version: Many people are still using Windows XP and Oracle has capped versions that will run under XP because, well, they don't want to test under XP. There is usually a warning if you try to install a newer version of JAVA on XP that this may or may not work too well (just so they warn you). We had an application at work that was written a long time ago and they found it only ran on JAVA 1.6. Anything newer was a no-no. So the programmer advised new users of the system that they had to uninstall the latest and go back to the older JAVA. (Eventually, one of our users: the FBI, demanded the application be rewritten, and it was.

To summarize: if you don't update JAVA and don't update your apps, then you might be O.K. for your system not dying (of course, you might be leaving yourself open for a vulnerability or two). If you get new software, it might come with a version-specific JAVA requirement so watch out for that. As for uninstalling it altogether, that could be problematic for various applications but you should find that out pretty quickly ("Oh, the backup software can't load...."). In that case, you can always reinstall. If you look at your task manager (Windows) at the processes and you see JAVA.EXE using the processor, that could be a sign you need JAVA. JAVASCRIPT is a scripting language based on JAVA that usually runs websites. Many suggest disabling scripting in your browser as a security means, but, if one of the websites you frequent requires that, you would need to turn it on again. You system may not become crippled for any of this but some of your applications might if JAVA is removed. Also, if you have trouble uninstalling JAVA, it could mean that one of your startup applications uses JAVA. Again, its an "application thing". If anyone sees something I said incorrectly, please let me know. I'd appreciate it.

Post was last edited on April 29, 2016 10:27 AM PDT

- Collapse -
To sum up

In other words just keep on doing what you were doing. Update Java and move on.

- Collapse -
Java vs Java browser plugin

This is about the Java browser which causes problems with security and is not really used anymore. JAVA the programming language is used more often than C++ or even .NET. If you plan on learning to program, JAVA is one of the best languages to learn from.

- Collapse -
Dump Java

Dump it! It's a security nightmare and to be honest, I got rid of it 6-7 months ago and haven't missed it or needed it. Even Oracle has admitted they're going to scrap it. Next goes flash.

- Collapse -
Think this is seriously overspoken

I think this is WAY overspoken, by someone trying to make an impression on us by being negative. I don't believe java is scrappable. It's a major programming language. Many programs are written in it.

Java is a programming language. Software can have security holes; the programming language it is written in cannot; that's a bunch of bunk!

Here is what says is included in the JRE: MORE TECHNICAL INFORMATION

"What will I get when I download Java software?
"The Java Runtime Environment (JRE) is what you get when you download Java software. The JRE consists of the Java Virtual Machine (JVM), Java platform core classes, and supporting Java platform libraries. The JRE is the runtime portion of Java software, which is all you need to run it in your Web browser.

"The Java Plug-in software is a component of the Java Runtime Environment (JRE). The JRE allows applets written in the Java programming language to run inside various browsers. The Java Plug-in software is not a standalone program and cannot be installed separately."

According to Wikipedia, this Java Virtual Machine is a loader that compiles and runs software that is written in java, calls libraries and classes, and so forth.

If Oracle is going to scrap it, either someone else will pick it up. Actually, as a matter of fact, I thought there were still two versions of Flash - and I had to install both kinds on my Ubuntu computer.

If noone takes charge of distributing Java, then I'm sure software that uses it will just come included with java like it used to.

- Collapse -
I Started to Agree With You

But then I remembered something. JAVA is NOT just a programming language. It is an entire environment. JRE? environment?? So, I went off to this site:

You might want to have a look and let me know your opinion as I value it. The point is that there are releases of JAVA containing security fixes and vulnerabilities. Yes, a "bad person" can go create malware in JAVA or any other environment. But when many of the updates that come out of Oracle are to seal off vulnerabilities, I don't know if I can completely excuse JAVA or any other language of contributing to malware because it has known vulnerabilities. Even the best coder who is careful in the code he or she writes can still generate a system that is open to hacking if the environment itself has vulnerabilities.

- Collapse -
Java is a programming language.

Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.

JRE (Oracle product developed by Sun and purchased by Oracle) isn't a programming language. As was said before Java was designed to be multi-platform to run on multiple OS's and Processors. Microsoft programming languages are written with an English type code that humans can unsderstan and compiled into executable code the computer understands specific to the OS and Processor. That's why MS languages only run on Windows machines typcially. There may be some older MS languages for other platforms but they are designed specifically for that OS.

JAVA uses the JRE to take the english like commands in Java. The code will be the same on all platforms but the JRE is specific tot he environment and basically translates the code for the OS and/or processor.

- Collapse -
Yes, But

If you look at the link I provided, Oracle has been releasing updates for JAVA that cover vulnerabilities in the product. That is the main point here, I believe. The comments cover that there are frequent updates to fix security issues.

- Collapse -
The answer to this is a difficult one...

The answer as to whether or not you need Java is a difficult one.

Firstly lets explain what Java is - Java is a programming language, it is a programming language that has a very special difference to other programming languages.

There are a number of programming languages out there that programmers can use to create programs or applications that run on your computer - these include things like C++, Pascal, Cobol, and of course Java.

Java has one unique difference to all those others in the fact that if you write a program in any of the other languages that program will only run on the operating system it was compiled for. Let's say for example you wrote a word processor in C++ and then compiled it in Linux, if someone then wanted to use that word processor in Windows they would need to get the source code, alter it to work with Windows because Windows has some differences and then re-compile it before they could use it.

The handy thing with this system is that if someone wrote a virus and compiled it under Windows that virus couldn't transfer itself to Linux, MacOS, OS/2, Amiga OS, it would only affect Windows computers

However with Java, a program wrote in Java should work on any device that will run Java so if I wrote a Java program on a Commodore Amiga, and then took that program to a PC I could then run that same program on a Windows PC, Linux PC or Mac and still get exactly the same result.

This plan does have a lot of advantages because it saves the programmer having to produce multiple versions of the same program, also some plugins are wrote in Java. If you have OpenOffice or LibreOffice a lot of the parts of that are wrote in Java, including many of the plugins.

It does however also have one big bad side to it though - that is that if anyone writes a virus in Java, because Java will run on anything that has Java installed in it that virus will also run on any system - so even though a Windows based virus shouldn't be able to infect a Linux based PC or a Mac if the software is wrote in Java this is possible.

Oracle is aware of this problem and constantly tries to stop anyone from creating a virus, and closing off the various holes, but unfortunately the minute you close one hole another one appears, and if you did close them all off it would make Java useless.

As with anything you run on a computer there always is that element of risk that you might get infected with a virus, even playing a video file with the wrong codec attached could infect your computer, but you have to weigh up the pros and cons.

If you were to uninstall Java you may find that a number of programs and websites may stop working and so you may have to find alternatives, if they are available. I know one person who bought an iPad and found he couldn't play Bridge on it because the iPad didn't have Java and the Bridge website was based on Java.

The only place you don't tend to find Java is on iOS devices, mainly because Apple doesn't like it as it breaks their limitations and allows people to install software on the device that isn't authorised by Apple and they consider it to be too much of a risk, although if you want to be that secure the best way to go is to just not put a power button on the device as even the best security in the world can be worked around as Apple found out recently with the FBI (it's the 1,000 windows scenario - your in a house with 1,000 windows, before you go out you make sure all the windows are closed, when you come back you find you've been burgled and the burglars got in through an open window which you failed to close - basically no matter how much you check there is always a way in!). This can cause a problem mainly for older sites that have a Java app on them (like the Bridge example above), although many sites now are being re-designed with alternatives for iOS devices where Apple will permit it, or in some cases you can VNC from the computer to the iOS device and get it to run a Java app through the PC but that's getting really complicated.

Your best way of protecting your system and still be able to use it properly is to just keep accepting the updates from Java. If you uninstall Java there is a risk that some programs will stop working.

- Collapse -
If java IS a security problem, the solution is rather differ

From what you are saying, it isn't that Java HAS security holes, it is that Java's portability makes it a security hole.

Is there a way to disable java when you aren't specifically running something that can use it?

It seems like the cure is a no brainer; Oracle needs to create an option so that if one choose, one can need to answer "yes" to a question before anything that uses java will run.

- Collapse -
JAVA Control Panel

If my memory doesn't fail me, aren't there security settings in the JAVA control panel that do as you suggested?

- Collapse -
Disable it in all of your browsers

darrenforrester99 gave a brief overview of Java. Technically, it's not entirely correct, but it's close enough for our discussion, here.

Java can be used to run programs local to your machine, such as LibreOffice. (Albeit, most of the Java code has been removed from the core of that particular product.) That is reasonably safe. It's basically as safe as downloading and installing any program on your machine. Stick with popular programs (and plug-ins, etc) from well-known sites. Have anti-virus running on your machine.

In addition to local programs, Java can be used by websites for some of their behavior. Some legitimate websites use Java. But, Java in the browser is where it's particularly dangerous. Because you have less control over what is downloaded from the sites to your browser. Some nefarious advertiser could be inject malicious code into the ads served to an otherwise well-known site.

So, you should disable Java in all of your browsers. You can search for instructions on how to disable Java in your browser. You should do this for every browser on your system. Even if you almost never use it. Look for instructions for Internet Explorer, Chrome, Firefox, Edge, Opera, etc.

Or, you could uninstall Java completely. For a lot of people, they'll never notice that it's not there.

But, some people find that they're using a program or a website that requires Java. I have a friend whose school used it for all of their interaction with students, like signing up for classes, attending online discussions, taking tests, etc. I showed her how to turn it on and off, so that she never surfed the 'Net at large with Java enabled.

The safest is to just uninstall it. If it turns out that something you use requires it, it's easy to reinstall. But, chances are you're fine without it.

Drake Christensen

- Collapse -
It is not necessary for your computer

You can safely uninstall Java. It is not necessary for your computer to function properly, and it adds security vulnerabilities. If you later run into a program or necessary website that needs it, it is very easy to reinstall. I suggest that you just uninstall it. I did, and I discovered that it isn't necessary for me.

- Collapse -
JAVA is a two-edged sword

To JAVA or not to JAVA? That is the question.

While leaving JAVA on a system does make it a bit more vulnerable to attack, if you use Best Practices, otherwise, then you should be able to mitigate that to a large degree. You can follow that link I gave to learn or LOT more than I could fit here. But, in short, if you use good Anti-virus and Anti-malware programs, a good third party software firewall AND a good hardware one, as well, and keep everything updated on a regular basis, the average computer user can sort of skate through relatively unharmed in comparison to the big money big guns.

You see, there are still a lot of websites that simply will NOT work without JAVA. I think that the only way that website writers will cease to use JAVA would be for Oracle to jerk it away altogether. Unfortunately, for us users, because of this we really have no choice but to keep the JAVA monster on our computers if we truly want an enriched internet experience. And this means keeping up best practices to try to keep as far ahead of the bad guys as we can.

An example of how I know that a lot of websites still don't work with JAVA is because I just upgraded my friend's computer to the latest version of JAVA. No matter how many times I've uninstalled and then reinstalled this latest version of JAVA (8.91) I can not get JAVA to work in either Firefox or Internet Explorer. I'm at the point where I'm ready to regress back to a previous version of JAVA to try to find one that works. And this is why I'm always a bit of a late adopter. It seems like updates sometimes just break things when they first come out, so I wait a little while before updating so that those bugs can be worked out.

In the end, it's up to you and your use of your computer as to whether or not you keep or ditch JAVA. I've tried ditching it, but there are too many websites that I use on a daily basis that don't work unless I have JAVA installed, so I keep it in hopes that some day the world of computing gets a clue and ditches JAVA.

I hope this helps you in some way. Best of luck to you! Grin

- Collapse -
Why won't Java updates install on my computer.

Not sure when this started happening but its been a couple years, everytime I get notice of an update it fails to download onto my Windows 7 computer using Chrome. Every other program I have ever tried to download worked fine. Just happened again the other day. Get about half way through and then says download failed. I am no expert when it comes to computers and that may be the cyber understatement of all time.
Sounds like from reading all of the answers it doesn't much matter anyway.

- Collapse -
Google Chrome

For me Google Chrome was causing problems with one of my anti-virus programs Hit-Man Pro. I uninstalled Chrome which you have to manually. it WILL not uninstall using control panel/programs uninstall. There are posts on the web everywhere on how to get rid of it. Like other posts said, Java in not absolutely necessary to run browsers at web sites. You don't need to keep updating it, and another thing, If you see a popup that there is an update available for your "Adobe Flash Player", do not click it, this has been a disguise for viruses and Ransom Ware. I even got my work computer fried with that virus, and I work for a major corporation and it got through our firewall. Of course I removed the hard drive, put it in a USB drive case, scanned it and found the Ransom Ware and tons of PUPS (Potentially Unwanted Programs). I got rid of Chrome and Java. Good Luck, hope this helped.

- Collapse -

I don't understand what in the world your problems with uninstalling Google Chrome have to do with the security issues of java.

- Collapse -
If you cannot get the update to download...

...then completely uninstall Java and reinstall it. I ran into this problem some years back, when I did need Java in order to run a program I had. Not installing the updates is a bad idea if you have Java installed. Either uninstall it completely and leave it off or uninstall it and reinstall the latest version (and you should be able to download and install updates regularly after that).

- Collapse -
It's a Tradeoff - I chose Disabled by Default

As others have stated here, you'll be most secure without it. Java and Flash have both been plagued with malware. You'll find some applications that won't run without the applet installed but more core functions will operate.

With the transition to HTML5, Flash really isn't necessary at this point but there are some programs that are still Java-dependent to operate.

At a minimum, disable it in your browsers. Also take a look at some plugins that will emulate some functionality (Firefox and Chrome)

For example, I like to use to check network speed but the default site uses Flash. I have Flash disabled. Speedtest has a beta site that runs without Flash so I can still get the data I want without the pretty animation... Works for me...

Oh and Oracle (Java) is deserving of a little hate for trying to manipulate start pages and install a variety of crapware with nearly every iteration of the Java installer - Not cool!

- Collapse -
Disable it in Java Control Panel

You can just disable Java by opening the Java control panel.
Select the security tab and untick the box beside "the enable Java content in the browser".
You could also raise the security level to Very High.
Then only Java applications by a certificate from a trusted authority are allowed to run.

- Collapse -
The trick to Java is something else.

The answer to the questions here is that Java is both a programming language and a platform. Its inherent versatility lends itself to be a self-written platform. The platform allows it to run on different OS's because it makes use of byte codes to carry the program's executive content. Also the reason for it to run some apps on your PC. JavaScript can run as something of a standalone app or in the line of the old Basic interpreter outfits. As for Oracle dumping Java, I have serious doubts about that.

Java is according to them the most popular programming language, It is hugely powerful and versatile. Then Google has built Android on Linux and guess what? You can build Java apps for Android. You even get a virtual Android environment to install on you Windows machine to build your app. That is, write, execute and debug it! Turn it into an APK and sell it! Imagine the market.

Dump it? Pigs can fly, no?

- Collapse -
If you don't need it - uninstall it.

But if something on the PC requires it, sign up for CNET alerts on updates to Java, and you will be informed almost the minute it needs updating. If I'm not mistaken - Avast has an application scanner that can let you know when this kind of applications is ready for update as well. It can even help you update it.

I have NOT been able to get the auto-updater to work on Java for years, so using this, or a helper program like application manager can get you zero day protection on vulnerable programs on the PC. Secunia PSI can also do this, but it is usually weeks behind schedule; so I rely on other alerts to help remind me to do this critical maintenance. Fortunately the UPS that needed this applet is no longer with me, so I uninstalled it immediately upon losing my "power conditioner".

- Collapse -

Java is a high level programming language and is used to create complete application that can run on single computer or to be distributed among servers and clients in a network.

Can anyone help me to know what is covariant return type in java??

Commercial link removed by moderator.

Post was last edited on May 2, 2016 6:58 AM PDT

- Collapse -
Re: covariant return type
- Collapse -

Yes, at the moment you do currently need Java for the most part. However, that WILL change. It's not a question of if, but when.

To all the supporters of Java, you're simply bias. By default, everyone should disable java by default and if they need to use an "antiquated" designed application then disable it.

Any way, it seems Google is moving away from Java like Apple dropped Adobe Flash. Here is Google's response to Chrome and Java (applets):

"Chrome no longer supports NPAPI (technology required for Java applets)
The Java plug-in for web browsers relies on the cross platform plugin architecture NPAPI, which has been supported by all major web browsers for over a decade. Google's Chrome version 45 (scheduled for release in September 2015) drops support for NPAPI, impacting plugins for Silverlight, Java, Facebook Video and other similar NPAPI based plugins.

Java applications are offered through web browsers as either a web start application (which do not interact with the browser once they are launched) or as a Java applet (which might interact with the browser). This change does not affect Web Start applications, it only impacts applets.

If you have problems accessing Java applications using Chrome, Oracle recommends using Internet Explorer (Windows) or Safari (Mac OS X) instead.

Developers and System administrators looking for alternative ways to support users of Chrome should see this blog regarding Launching Web Start applications."

CNET Forums