Академический Документы
Профессиональный Документы
Культура Документы
The Stealth Project was soon renamed to theGreen Project, withJames Goslingand Mike
Sheridan joining Naughton. Together with other engineers, they began work in a
small office onSand Hill RoadinMenlo Park, California. They aimed to develop new te
chnology for programming next-generation smart appliances, which Sun expected to
offer major new opportunities.[16]
The team originally considered using C++, but rejected it for several reasons. B
ecause they were developing anembedded systemwith limited resources, they decided
that C++ needed too much memory and that its complexity led to developer errors.
The language's lack ofgarbage collectionmeant that programmers had to manually ma
nage system memory, a challenging and error-prone task. The team also worried ab
out the C++ language's lack of portable facilities for security,distributed progr
amming, andthreading. Finally, they wanted a platform that would port easily to a
ll types of devices.
Bill Joyhad envisioned a new language combiningMesaand C. In a paper calledFurther,
he proposed to Sun that its engineers should produce anobject-orientedenvironment
based on C++. Initially, Gosling attempted to modify and extend C++ (a proposed
development that he referred to as "C++ ++ --") but soon abandoned that in favor
of creating a new language, which he calledOak, after the tree that stood just o
utside his office.[citation needed]
By the summer of 1992, the team could demonstrate portions of the new platform,
including the GreenOS, the Oak language, the libraries, and the hardware. Their f
irst demonstration, on September 3, 1992, focused on building apersonal digital a
ssistant(PDA) device namedStar7[1]that had a graphical interface and a smart agent
called "Duke" to assist the user. In November of that year, the Green Project wa
s spun off to becomeFirstperson, a wholly owned subsidiary of Sun Microsystems, a
nd the team relocated toPalo Alto, California.[17]The Firstperson team had an inte
rest in building highly interactive devices, and whenTime Warnerissued arequest for
proposal(RFP) for aset-top box, Firstperson changed their target and responded w
ith a proposal for a set-top box platform. However, thecableindustry felt that the
ir platform gave too much control to the user; Firstperson lost their bid toSGI.
An additional deal withThe 3DO Companyfor a set-top box also failed to materialize
. Unable to generate interest within the television industry, the company was ro
lled back into Sun.
Java meets the Web[edit]
after three days of brainstorming withJohn Gage(the Director
In June and July 1994
of Science for Sun), Gosling, Joy, Naughton,Wayne Rosing, andEric Schmidt the team
re-targeted the platform for theWorld Wide Web. They felt that with the advent of
graphicalweb browserslikeMosaicthe Internet could evolve into the same highly inter
active medium that they had envisioned for cable TV. As a prototype, Naughton wr
ote a small browser, WebRunner (named after the movieBlade Runner), renamedHotJava
[16]in 1995.
In 1994 Sun renamed the Oak language asJavaafter atrademarksearch revealed thatOak Te
chnologyused the nameOak.[18]Although Java 1.0a became available for download in 19
94, the first public release of Java, Java 1.0a2 with the HotJava browser, came
on May 23, 1995, announced by Gage at theSunWorldconference. Accompanying Gage's a
nnouncement,Marc Andreessen, Executive Vice President ofNetscape Communications Co
rporation, unexpectedly announced that Netscape browsers would include Java supp
ort. On January 9, 1996, Sun Microsystems formed the JavaSoft group to develop t
he technology.[19]
Version history[edit]
Main article:Java version history
The Java language has undergone several changes since the release of JDK (Java D
evelopment Kit) 1.0 on January 23, 1996, as well as numerous additions of classe
s and packages to the standardlibrary. Since J2SE 1.4 theJava Community Process(JCP
) has governed the evolution of the Java Language. The JCP usesJava Specification
Requests(JSRs) to propose and specify additions and changes to the Java platform
. TheJava Language Specification(JLS) specifies the language; changes to the JLS a
re managed under JSR 901.[20]
Sun releasedJDK 1.1on February 19, 1997. Major additions included an extensive ret
ooling of theAWTevent model,inner classesadded to the language,JavaBeansandJDBC.
Licensing[edit]
The source code for Sun's implementations of Java (that is the de facto referenc
e implementation) has been available for some time, but until recently the licen
se terms severely restricted what could be done with it without signing (and gen
erally paying for) a contract with Sun. As such these terms did not satisfy the
requirements of either theOpen Source Initiativeor theFree Software Foundationto be
considered open source or free software, and Sun Java was therefore a proprietar
y platform.[35]
While several third-party projects (e.g.GNU ClasspathandApache Harmony) createdfree
softwarepartial Java implementations, the large size of the Sun libraries combine
d with the use ofclean room methodsmeant that their implementations of the Java li
braries (the compiler and VM are comparatively small and well defined) were inco
mplete and not fully compatible. These implementations also tended to be far les
s optimized than Sun's.[citation needed]
Free software[edit]
See also:OpenJDK
Sunannounced inJavaOne2006 that Java would becomefreeandopen source software,[36]and
October 25, 2006, at theOracle OpenWorldconference,Jonathan I. Schwartzsaid that th
e company was set to announce the release of the coreJava Platformas free and open
source software within 30 to 60 days.[37]
Sun released the Java HotSpot virtual machine and compiler as free software unde
r theGNU General Public Licenseon November 13, 2006, with a promise that the rest
of the JDK (that includes the JRE) would be placed under the GPL by March 2007 (
"except for a few components that Sun does not have the right to publish in dist
ributable source form under the GPL").[38]According toRichard Stallman, this would
mean an end to the "Java trap".[39]Mark Shuttleworthcalled the initial press anno
uncement, "A real milestone for thefree softwarecommunity".[40]
Sun released thesource codeof theClass libraryunderGPLon May 8, 2007, except some lim
ted parts that were licensed by Sun from 3rd parties who did not want their code
to be released under a free software and open-source license.[41]Some of the enc
umbered parts turned out to be fairly key parts of the platform such as font ren
dering and 2D rasterising, but these were released as open-source later by Sun (
seeOpenJDK Class library).
Sun's goal was to replace the parts that remain proprietary and closed-source wi
th alternative implementations and make the class library completely free and op
en source. In the meantime, a third party project calledIcedTeacreated a completel
y free and highly usable JDK by replacing encumbered code with either stubs or c
ode fromGNU Classpath. Although OpenJDK has since become buildable without the en
cumbered parts (from OpenJDK 6 b10[42]),IcedTeais still used by the majority of di
stributions, such asFedora,RHEL,Debian,Ubuntu,Gentoo,Arch LinuxandSlackware, as it p
ides security releases and an easier means for patch inclusion. OpenJDK also sti
ll doesn't include a browser plugin &Web Startimplementation, so IcedTea's compani
on project, IcedTea-Web, is needed to fill this gap.
In June 2008, it was announced thatIcedTea6 (as the packaged version of OpenJDK o
nFedora 9) has passed theTechnology Compatibility Kittests and can claim to be a fu
lly compatible Java 6 implementation.[43]
Because OpenJDK is under the GPL, it is possible to redistribute a custom versio
n of the JRE directly with software applications,[44][45]rather than requiring th
e enduser (or their sysadmin) to download and install the correct version of the
proprietary Oracle JRE onto each of their systems themselves.
Criticism[edit]
Main article:Criticism of Java
In most cases Java support is unnecessary in Web browsers, and security experts
recommend that it not be run in a browser unless absolutely necessary.[46]It was
suggested that, if Java is required by a few Web sites, users should have a sepa
rate browser installation specifically for those sites.
Generics[edit]
Further information:Generics in Java
Whengenericswere added to Java 5.0, there was already a large framework of classes
(many of which were alreadydeprecated), so generics were chosen to be implemente
utersthat it was not secure and that people should disable Java. Jaime Blasco, La
bs Manager with AlienVault Labs, stated that "Java is a mess. It s not secure. You
have to disable it."[62]This vulnerability affectsJava 7and it is unclear if it af
fectsJava 6, so it is suggested that consumers disable it.[63][64]Security alerts
from Oracle announce schedules of critical security-related patches to Java.[65]
On January 14, 2013, security experts said that the update still failed to prote
ct PCs from attack.[66]This exploit hole prompted a response from theUnited States
Department of Homeland Securityencouraging users to disable or uninstall Java.[6
7]Apple blacklisted Java in limited order for all computers running itsMac OS Xoper
ating system through a virus protection program.[68]
Adware[edit]
The Java browser runtime environment has a history of bundling sponsored softwar
e to be installed by default during installation and during the updates which ro
ll out every month or so. This includes the "Ask.com toolbar" that will redirect
browser searches to ads and "McAfee Security Scan Plus".[69]
Redundancy[edit]
Several authors inline with recent Java security and vulnerability issues have c
alled for users to ditch Java. "Once promising, it has outlived its usefulness i
n the browser, and has become a nightmare that delights cyber-criminals at the e
xpense of computer users."[70]"I think everyone should uninstall Java from all the
ir PCs and Macs, and then think carefully about whether they need to add it back
. If you are a typical home user, you can probably do without it. If you are a b
usiness user, you may not have a choice."[71]
Update System[edit]
Java has yet to release an automatic updater that does not require user interven
tion and administrative rights[72]unlike Google Chrome[73]and Flash player.[74]
See also[edit]
*Java
Javaportal
version history
* Common Intermediate Language
* Comparison of the Java and .NET platforms
* Criticism of Java
* List of Java APIs
* Java Logging Frameworks
* Java performance
* JavaFX
* Jazelle
References[edit]
1. Jump up^Version 1.0 press release, Sun.
2. Jump up^Ortiz, C. Enrique; Giguere, Eric (2001).Mobile Information Device Profi
le for Java 2 Micro Edition: Developer's Guide(PDF).John Wiley & Sons.ISBN978-047103
4650. RetrievedMay 30,2012.
3. ^Jump up to:ab"Java SE Downloads - Latest Release".Oracle. Retrieved2014-04-15.
4. Jump up^"Java Platform, Early Access Releases".
5. Jump up^http://openjdk.java.net/groups/hotspot/
6. Jump up^Oracle JDK 7 and JRE 7 Certified System Configurations
7. Jump up^http://www.oracle.com/technetwork/java/javase/javase7locales-334809.ht
ml
8. Jump up^GNU GPLv2 with Classpath exception
9. Jump up^BCL For Java SE
10. Jump up^OpenJDK FAQ
11. Jump up^Naughton, Patrick."Java Was Strongly Influenced by Objective-C".Virtual
School.
12. Jump up^"Sun Opens Java". Sun Microsystems. 13 November 2006. Archived fromthe
originalon 2008-05-13.
13. Jump up^Kelly O'Hair (December 2010)."OpenJDK7 and OpenJDK6 Binary Plugs Logic
Removed".Oracle Corporation. Retrieved2011-11-25.
14. Jump up^"JVM 7 Specification".
15. Jump up^www.beanshell.org
16. ^Jump up to:abJon Byous (April 2003)."Java Technology: The Early Years".Sun Micro
systems. Archived fromthe originalon May 30, 2008. Retrieved2009-08-02.
ks Game
54. Jump up^speed C++ GNU g++ speed | Computer Language Benchmarks Game
55. Jump up^C++ vs Java performance; It s a tie! | Blog of Christian Felde
56. ^Jump up to:abJ.P.Lewis and Ulrich Neumann."Performance of Java versus C++". Gra
phics and Immersive Technology Lab,University of Southern California.
57. Jump up^The Java is Faster than C++ and C++ Sucks Unbiased Benchmark
58. Jump up^FreeTTS A Performance Case Study, Willie Walker, Paul Lamere, Philip
Kwok
59. Jump up^Java SE Platform Security Architecture. Oracle. Retrieved 2013-04-23.
60. Jump up^blogs.computerworld.com
Java security flaw: yada yada yada, 2012-08-3
1
61. Jump up^threatpost.com
New Zero-Day Vulnerability Found in Java 5, 6 and 7; 1
.1 Billion Desktops Affected, 2012-09-26
62. Jump up^nbcnews.com Experts urge PC users to disable Java, cite security flaw
, 2013-01-10
63. Jump up^US Dept. of Homeland Security Calls On Computer Users To Disable JavaF
orbes, Jan. 11, 2013
64. Jump up^Nasty New Java Zero Day Found; Exploit Kits Already Have It, 2013-0110
65. Jump up^Oracle Critical Patch Updates, Security Alerts
66. Jump up^independent.ie
Emergency patch for Java fails to fix cybercrime holes
, warn experts, 2013-01-14
67. Jump up^zdnet.com Homeland Security warns to disable Java amid zero-day flaw,
2013-01-11
68. Jump up^venturebeat.com
Oracle issues fix for Java exploit after DHS warns of
its holes, 2013-01-14
69. Jump up^Bott, Ed."A close look at how Oracle installs deceptive software with
Java updates".ZDNet.com. ZDNet. Retrieved14 December2014.
70. Jump up^http://readwrite.com/2012/09/05/java-is-no-longer-needed-pull-the-plu
g-in
71. Jump up^http://www.theguardian.com/technology/askjack/2013/feb/08/java-remove
-ask-jack-technology
72. Jump up^http://superuser.com/questions/312319/how-do-i-update-java-from-a-non
-admin-account.Missing or empty|title=(help)
73. Jump up^https://support.google.com/chrome/answer/95414?hl=en.Missing or empty|t
itle=(help)
74. Jump up^http://helpx.adobe.com/security/products/flash-player/apsb14-13.html.M
issing or empty|title=(help)
External links[edit]
Wikiversity has learning materials aboutLearning Java
Look upJavain Wiktionary, the free dictionary.
Wikibooks
Listen
to this
has aarticle(info/dl)
book on the topic of:Java Programming
This audio file was created from a revision of the "Java (software platform)" ar
ticle dated 2013-08-19, and does not reflect subsequent edits to the article. (A
udio help)
More spoken articles
* Official website
* sun.com
Official developer site
* infoq.com PresentationbyJames Goslingabout the origins of Java, from the JVM Lang
uages Summit 2008
* Java Tutorials and Examples collection
* Java Introduction, May 14, 2014, Java77 Blog
* javatester.org What Version of Java Are You Using?, tells you which version yo
u are using
* JavaRa, a utility developed by Paul McLain and Fred De Vries atRaProductsto find
and remove older versions of Java, now distributed bySingularLabs.
[show]
* V
* T
* E
Java
[show]
* V
* T
* E
Sun Microsystems(acquiredbyOracle Corporation, 2010)
[show]
* V
* T
* E
Integrated development environmentsforJava
Categories:
* Java platform
* Computing platforms
* Cross-platform software
Navigation menu
* Create account
* Not logged in
* Talk
* Contributions
* Log in
* Article
* Talk
* Read
* Edit
* View history
Top of Form
Bottom of Form
* Main page
* Contents
* Featured content
* Current events
* Random article
* Donate to Wikipedia
* Wikipedia store
Interaction
* Help
* About Wikipedia
* Community portal
* Recent changes
* Contact page
Tools
* What links here
* Related changes
* Upload file
* Special pages
* Permanent link
* Page information
* Wikidata item
* Cite this page
Print/export
* Create a book
* Download as PDF
* Printable version
Languages
* ???????
* ??????????
* ?????????? (???????????)?
* Catal
* ?e tina
* Deutsch
* Espaol
* ?????
* Franais
* ???
* Italiano
* ?????
* ???????
* ??????????
* ???
* ??????
* Portugus
* ???????
* Trke
* ??????????
* Ti?ng Vi?t
* ??
Edit links
* This page was last modified on 18 September 2015, at 08:55.
* Text is available under theCreative Commons Attribution-ShareAlike License; add
itional terms may apply. By using this site, you agree to theTerms of UseandPrivacy
Policy. Wikipedia is a registered trademark of theWikimedia Foundation, Inc., a n
on-profit organization.
* Privacy policy
* About Wikipedia
* Disclaimers
* Contact Wikipedia
* Developers
* Mobile view
*
*
Ggggggggggggggggg jjjjjjjjjjjjjjjjjjjjjjj
Gggggggggggg
Jjjjjjjjjjjjjjj
Ggggggggg
Ddddddddddddd
Rrrrrrrrrrrrrrrrrr
Ttttttttttttttttt
Mhlmbglf
Mhtmr