8233795: Consider adding a notion of a Value-based class to API Documentation index
Reviewed-by: hannesw
This commit is contained in:
parent
d97fe7b050
commit
abadeda8a5
@ -1,11 +1,35 @@
|
||||
<!doctype html>
|
||||
<!--
|
||||
Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved.
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
|
||||
This code is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License version 2 only, as
|
||||
published by the Free Software Foundation. Oracle designates this
|
||||
particular file as subject to the "Classpath" exception as provided
|
||||
by Oracle in the LICENSE file that accompanied this code.
|
||||
|
||||
This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
version 2 for more details (a copy is included in the LICENSE file that
|
||||
accompanied this code).
|
||||
|
||||
You should have received a copy of the GNU General Public License version
|
||||
2 along with this work; if not, write to the Free Software Foundation,
|
||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
or visit www.oracle.com if you need additional information or have any
|
||||
questions.
|
||||
-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Value-based Classes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
|
||||
</head>
|
||||
<body>
|
||||
<h1 id="ValueBased">Value-based Classes</h1>
|
||||
<h1 id="ValueBased">{@index "Value-based Classes"}</h1>
|
||||
|
||||
Some classes, such as <code>java.util.Optional</code> and
|
||||
<code>java.time.LocalDateTime</code>, are <em>value-based</em>. Instances of a
|
||||
@ -23,7 +47,7 @@ value-based class:
|
||||
<li>are considered equal solely based on <code>equals()</code>, not
|
||||
based on reference equality (<code>==</code>);</li>
|
||||
<li>do not have accessible constructors, but are instead instantiated
|
||||
through factory methods which make no committment as to the identity
|
||||
through factory methods which make no commitment as to the identity
|
||||
of returned instances;</li>
|
||||
<li>are <em>freely substitutable</em> when equal, meaning that interchanging
|
||||
any two instances <code>x</code> and <code>y</code> that are equal
|
||||
|
Loading…
x
Reference in New Issue
Block a user