Sun Microsystems 2 manual Using the Signature Test Tool

Page 27

When there are two different access modifiers select the more visible one.

For example, if A is a public int foo, and B is protected int foo, then the merge into C results into public int foo.

If the elements differ in the final modifier, do not include it If a class is final, then all of its methods are implicitly final according to Section 8.4.3.3 of The Java Language Specification, 2nd Editon.

If corresponding elements differ in the static modifier, then declare a conflict.

Element-specific rules are as follows:

If corresponding classes differ in the abstract modifier, then declare a conflict.

Apply the following rules for classes or interfaces and nested classes or interfaces, where for the purpose of this description, c1 and c2 are corresponding classes from the input APIs:

If a superclass of c1 is a subclass of a superclass of c2, use the superclass of c1 as the superclass for the new element. Otherwise, if a superclass of c2 is a subclass of a superclass of c1, use the superclass of c2 as the superclass for the new element. If neither of the previous two conditions are possible, then declare a conflict.

For classes or interfaces and nested classes or interfaces, create a combined set of superinterfaces of the corresponding classes and dismiss duplicates. Use the combined set for the new element.

For methods and constructors, construct a throws list as follows:

In binary compatibility mode, an empty throws list results independently of the source lists.

In source compatibility mode, both throws lists are normalized as described in TABLE 2-3before they are compared. If the normalized lists are equal, one is used as the result, otherwise, a conflict is declared.

Methods that differ in the abstract modifier are not included.

If a method result type is not identical a conflict is declared.

If a field value type is not identical a conflict is declared.

If a field element differs in the volatile modifier, it is included.

Process constant field values as follows:

If one of the fields has a constant value and other does not, include the constant value in the result field.

If both fields have a constant value then declare a conflict if the values are different, otherwise include the value in the result field.

Chapter 2 Using the Signature Test Tool

13

Image 27
Contents SigTest Tool 2.0 User’s Guide Please Recycle Contents SetupAndTest Command SignatureTest CommandIndex Vi Signature Test Tool 2.0 User’s Guide April Table A-1 TablesViii Signature Test Tool 2.0 User’s Guide April Code Examples Signature Test Tool 2.0 User’s Guide April Who Should Use This Guide Before You Read This GuideHttp//jtharness.dev.java.net Related Documentation How This Guide Is OrganizedSun Welcomes Your Comments Typographic ConventionsXiv Signature Test Tool 2.0 User’s Guide April Signature Test Basics IntroductionMutual Binary Compatibility Check What is TestedClass and Class Member Attributes Checked Mutual Source Compatibility CheckSource and Binary Compatibility Modes Using Custom Signature Loaders Signature Test Tool 2.0 User’s Guide April Signature Test Tool Basics Using the Signature Test ToolReflection and Static Run Modes Constant Checking in Differing Run Modes Generics Checking in Binary ModeBootstrap and Extension Classes 1Settings for the Setup and SignatureTest CommandsPackage PackageWithoutSubpackages Exclude Merge Command Operative Principles Signature File Merge RulesJSR 68-Based Merge Element Handling by Merge Using the Signature Test Tool Help Debug Static Classpath path Setup CommandCommand Description Java com.sun.tdk.signaturetest.Setup argumentsVerbose FileName filename ClosedFile File//pathNonClosedFile Package3Signature File Format Compatibility Case Sensitivity of Command ArgumentsSignature File Formats Java.lang.RuntimeException class, orSignature File Contents Signature File Body 4Signature File Content SummaryStrictfp Transient Volatile Synchroniz Native Help Debug Static Mode bin src 5SignatureTest Command ArgumentsJava com.sun.tdk.signaturetest.SignatureTest arguments Classpath see Classpath CheckValueNoCheckValue ClassCacheSize sizeofcacheErrorAll NoMergeFormatPlain Running a Signature Test With the JavaTest Harness SigTest-Directory/examples/sampleTCK/tck/tests/api/sigtestTestsuite-path/tests/api/signaturetest Report Formats Sorted ReportFileName ./name.sig Code Example 2-1Unsorted Report Example Unsorted ReportJava com.sun.tdk.signaturetest.SetupAndTest arguments 6SetupAndTest Command ArgumentHelp Reference path Java com.sun.tdk.signaturetest.Merge arguments Merge CommandHelp Files Write -Binary 7Merge Command ArgumentsQuick Start Examples Example Setup CommandRunning the Setup Command Javac -d V1.0 V1.0/test.javaV1.0/example/test.class This completes the Setup command example Running SignatureTest Without the JavaTest Harness Example SignatureTest CommandSTATUSFailed.3 errors Javac -d V2.0 V2.0/test.javaV2.0/example/test.class Setenv JRE Java-Home/jre/lib/rt.jar Example SetupAndTest CommandRunning the SetupAndTest Command V2.0/example/test.class The API under testCode Example A-5SetupAndTest Command Output Example Running Merge Examples Merge ExamplesA.class Run command #2 Example Result Files Code Example A-7 Contents of ./x2.sig Code Example A-9 Contents of x1+x2.sig Signature Test Tool 2.0 User’s Guide April Index Sorted report, 24 static modeUnsorted report
Related manuals
Manual 50 pages 18.14 Kb

2 specifications

Sun Microsystems, founded in 1982, was a significant player in the computing industry, best known for its innovative technology solutions and workstations, particularly the Sun-4, which represented a key milestone in the company's history. The Sun-4 architecture, launched in 1987, utilized the SPARC (Scalable Processor Architecture) RISC processor, notable for its high performance and scalability.

One of the primary features of Sun Microsystems' platforms was their ability to efficiently handle multitasking and resource management, making them ideal for enterprise-level applications and development environments. Sun-4 workstations boasted impressive graphics capabilities with the addition of advanced graphical user interfaces, support for color displays, and the SUNVIEW windowing system, which enhanced user experience and productivity.

The Sun-4 systems also supported the SunOS operating system, which was based on UNIX. This operating system was engineered for stability and robustness, offering features like multiuser support, networked environments, and advanced security options. Moreover, SunOS provided seamless integration with various programming languages, including C and C++, facilitating software development that aligned with industry standards.

Another standout characteristic of Sun Microsystems was its commitment to open systems and standards. By providing developers with comprehensive tools and environments, such as the Standardized Application Programming Interface (API) and support for networking protocols, Sun facilitated interoperability among different computing platforms. The emphasis on open architecture also meant that customers could easily upgrade their systems without being locked into proprietary solutions.

Sun Microsystems was also ahead of its time with innovations in network computing. Their workstations were among the first to support network file systems and distributed computing concepts, enabling seamless data sharing across multiple systems. With the introduction of the Network File System (NFS), Sun revolutionized how data was accessed and managed across networks, which played a significant role in the evolving landscape of client-server computing.

In summary, the Sun Microsystems 2 and its successive innovations in workstation technology highlighted the company's forward-thinking approach. By integrating powerful performance with open systems, robust operating systems, and advanced networking capabilities, Sun laid the groundwork for modern computing, influencing various sectors from academia to enterprise solutions. Even after its acquisition by Oracle in 2010, the legacy of Sun Microsystems continues to be felt across the computing industry.