Visual J
   HOME

TheInfoList



OR:

Visual J++ is
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
's discontinued implementation of
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
.
Syntax In linguistics, syntax ( ) is the study of how words and morphemes combine to form larger units such as phrases and sentences. Central concerns of syntax include word order, grammatical relations, hierarchical sentence structure (constituenc ...
, keywords, and grammatical conventions were the same as Java's. It was introduced in 1996 and discontinued in January 2004, replaced to a certain extent by J# and C#. The implementation, MSJVM, did not pass
Sun Microsystems Sun Microsystems, Inc., often known as Sun for short, was an American technology company that existed from 1982 to 2010 which developed and sold computers, computer components, software, and information technology services. Sun contributed sig ...
' compliance tests, leading to a lawsuit from Sun, Java's creator. Microsoft ceased such support for the MSJVM on December 31, 2007 (later Oracle bought Sun, and with it Java and its trademarks). Microsoft however, officially started distributing Java again in 2021 (though not bundled with Windows or its web browsers as before), i.e. their build of
Oracle An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination. Descript ...
's
OpenJDK OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006, four years before the company was acquired by Oracle Corp ...
, which Microsoft plans to support for at least 6 years, for LTS versions, i.e. to September 2027 for Java 17.


J++ compared to Sun's Java implementation

While J++ conformed to the Java language specification,
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
did not implement certain features of the official Sun Java implementation in its Visual J++ product line. Remote Method Invocation (Java RMI) and Java Native Interface (JNI) are such examples. In addition, J++ implemented other extensions that were not part of Sun's Java implementation. The inclusion of callbacks and delegates for
event handling In computing, an event is a detectable occurrence or change in the system's state, such as user input, hardware interrupts, system notifications, or changes in data or conditions, that the system is designed to monitor. Events trigger responses or ...
further defined J++ as a completely different language merely based on an already existing design concept. Furthermore, J++ applications did not conform to the same standardized method of accessing the underlying operating system functions as any other Java application under Sun's Java SDK. In
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
's implementation, an underlying framework called J/Direct provided a base mechanism that allowed J++ applications to completely circumvent Java's class libraries and
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
in accessing the underlying operating system. Due to this short-cut around the original Java framework, J++ applications were more efficient in taking advantage of Win32
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
functions than Java applications. J++ applications using these features could not be run on Sun's Java SDK, but the Kaffe project developed extensions which made it possible to run J++ applications with these features on their open sourced
JVM A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descri ...
. However, these extensions (implemented by TransVirtual under Microsoft funding) were not widely used, and J++ applications still needed to be compiled on Visual J++ before being able to be run by Kaffe. Visual J++ supported
ActiveX ActiveX is a deprecated software framework created by Microsoft that adapts its earlier Component Object Model (COM) and Object Linking and Embedding (OLE) technologies for content downloaded from a network, particularly from the World Wide W ...
.


The WFC

The Windows Foundation Classes (WFC) encapsulated the Microsoft Win32 platform
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
and
DHTML Dynamic HTML, or DHTML, is a term which was used by some browser vendors to describe the combination of HTML, style sheets and client-side scripts (JavaScript, VBScript, or any other supported scripts) that enabled the creation of interactiv ...
object models into a unified class library. WFC was primarily designed for creating
graphical user interface A graphical user interface, or GUI, is a form of user interface that allows user (computing), users to human–computer interaction, interact with electronic devices through Graphics, graphical icon (computing), icons and visual indicators such ...
s for Java applications on Windows.


Sun's litigation against Microsoft

Sun Microsystems Sun Microsystems, Inc., often known as Sun for short, was an American technology company that existed from 1982 to 2010 which developed and sold computers, computer components, software, and information technology services. Sun contributed sig ...
had originally licensed Java to
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
but later initiated litigation against Microsoft for trademark violation. Sun's trademark license for usage of the Java brand insists that all implementations be "compatible". Some observers have remarked that this incompatibility appears to have been a deliberate aim of Microsoft's, in an attempt to at least slow the advance of Sun's Java technology. The failure of the MSJVM to pass Sun's compliance tests was a large factor in the initial lawsuit. In 2004, this and all other outstanding Sun–Microsoft lawsuits were settled as part of a wide-ranging agreement between Sun and Microsoft. As provided in the settlement, Microsoft could not incorporate into J++ features that Sun introduced into Java in versions beyond the one J++ had (at that date) been mirrored from; it would be frozen at the feature set of Java version 1.1.4. This effectively killed J++, and ended further updates. Microsoft was also forced to agree to cease distribution of the MSJVM; it is no longer available for download. The terms of the settlement did, however, permit Microsoft to provide security support, allowing further updates to the MSJVM to fix security holes and any other problems relating to security threats. Microsoft ceased such support for the MSJVM on December 31, 2007. The technology of J++ was eventually recycled, surviving for a while as part of the Microsoft .NET platform and the J# programming language.


Visual J++ IDE

Visual J++ was also the name of the
Integrated Development Environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
(IDE) for J++ and provided many tools and utilities to help J++ programmers fully leverage the Win32
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
. Visual J++ is no longer available for distribution, but it was part of the Microsoft Visual Studio product line. Visual Studio 6.0 was the last release to include J++.


Visual J#

Visual J# ''(pronounced "Jay Sharp")'' is a
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
language whose syntax is close to Java, part of the .NET Framework. Visual J# is part of the Microsoft Visual Studio .NET product suite and is designed to help developers and programmers migrate from J++ (or Java) to the .NET Framework. Microsoft later developed the C# ("C Sharp") language as the primary language for the .NET platform, which was in many ways influenced by Java; subsequently the .NET Framework shares many ideas in common with Java. Much like Java, C# is compiled to a type of bytecode (called CIL), and runs on top of a virtual machine called the Common Language Runtime in .NET. Visual Studio 2005 was the last release to include J#.


References


External links


Product Features in Visual J++ – By Edition

Microsoft Visual J#

Microsoft Java Web Site

Sun's Agreement with Microsoft
{{Microsoft development tools Discontinued Microsoft development tools J++