JEP 359

GPTKB entity

Statements (595)
Predicate Object
gptkbp:instance_of gptkb:API
gptkb:Java_Enhancement_Proposal
gptkb:technique
gptkbp:addresses Memory Fragmentation
Security vulnerabilities
Garbage Collection Latency
gptkbp:aims_to Reduce pause times
Improve observability of Java applications.
Increase security for Java applications
gptkbp:allows Cannot be abstract.
Cannot extend other classes.
Cannot have mutable fields.
Cannot extend sealed interfaces.
gptkbp:api Minimal API changes.
gptkbp:application Used in enterprise applications.
gptkbp:approves 2021-06-16
gptkbp:author gptkb:Brian_Goetz
Brian Goetz.
Johan Vos.
gptkbp:benefits Real-Time Applications
High-Performance Applications
Data-Intensive Applications
Reduces boilerplate code.
Continuous improvement.
Achieved.
Large Heap Sizes
Reduces boilerplate code for data classes.
Simplifies the creation of data-carrying classes.
Real-time monitoring of applications.
Improved type safety.
Improved performance and compatibility.
Improves maintainability of code.
New rendering capabilities.
Significant on mac OS.
gptkbp:challenges Compatibility with older mac OS versions.
Ensuring compatibility with existing systems.
Ensuring minimal performance impact.
Handling large volumes of data.
Maintaining event integrity.
Providing user-friendly interfaces.
Legacy support.
gptkbp:class Records cannot be subclassed.
gptkbp:code Automatically generated.
sealed interface Shape permits Circle, Square.
gptkbp:collaborated_with gptkb:software_framework
gptkb:Open_JDK_contributors
Open source projects
gptkbp:collaborations Open community.
gptkbp:communication Supports serialization.
Records are serializable.
gptkbp:community_engagement Active discussions in forums.
gptkbp:community_involvement Community engagement.
Open for contributions.
gptkbp:community_support Strong community support.
Active community.
gptkbp:constructor Automatically generated.
gptkbp:contributed_to Scalability
Java Performance
Java graphics performance.
gptkbp:contribution Contributed to the evolution of Java.
Follow Open JDK guidelines.
Significant contribution to Java language evolution.
Community contributions encouraged.
Community contributions to examples.
Enhances expressiveness of the language.
gptkbp:created 2021-09-15
gptkbp:date 2021-09-14
gptkbp:dependency None.
gptkbp:design Simplicity and clarity.
Encapsulation, clarity.
gptkbp:developer 2020-03-17
Updated for new pipeline.
gptkbp:discusses Open JDK mailing list.
https://openjdk.java.net/jeps/359
gptkbp:effective_date 2020-01-14
gptkbp:ends_at A valuable addition to the Java language.
A valuable addition to Java.
gptkbp:enhances Application Performance
Memory Management
Cryptographic algorithms
Potential for future enhancements.
Potential for additional features.
Potential for more sealed types.
gptkbp:error_handling Improved error handling.
gptkbp:established Can declare multiple fields.
gptkbp:example Multiple examples provided in documentation.
record Point(int x, int y) {}
Numerous examples in documentation.
Record Point(int x, int y) {}
Allows defining a restricted set of implementations.
gptkbp:features Low overhead.
Immutable data carriers
Immutable data classes
Pattern matching for records.
Event streaming API.
Asynchronous event delivery.
Event filtering.
Event transformation.
Flexible configuration.
Integration with existing tools.
Support for custom events.
Support for multiple consumers.
Support for various protocols.
Similar to sealed classes.
Pattern matching support.
gptkbp:feedback Generally positive.
Positive reception.
Feedback mechanism established.
Open JDK mailing lists.
Positive feedback from developers.
Positive from the community.
Positive reception from developers.
Git Hub issues.
gptkbp:field Supports primitive and reference types.
Can be final.
gptkbp:first_published 2021-06-30
gptkbp:focus gptkb:Company
gptkbp:format Supports deserialization.
gptkbp:formulation record Class Name { Field Type field Name; }
record Class Name {...}.
gptkbp:future_plans Increase community engagement.
Enhancements in future JDK versions.
Improve documentation.
Monitor performance.
Enhance user interfaces.
Expand event types.
Explore integration with other monitoring tools.
Potential extensions to sealed types.
gptkbp:goal Enhance rendering capabilities.
Enable better resource management.
Enhance performance monitoring.
Facilitate debugging.
Improve application reliability.
Support for cloud-native applications.
gptkbp:has_documentation Comprehensive.
Available for developers.
Available on Open JDK website.
Available in official Java documentation.
gptkbp:has_goal Higher efficiency.
gptkbp:has_method Automatically generated.
https://www.w3.org/2000/01/rdf-schema#label JEP 359
gptkbp:impact Performance improvements
Improves code readability and maintainability.
Simplifies data handling in Java.
Better graphics in applications.
Graphics rendering in Java applications on mac OS.
Simplifies data carrier classes.
Enhances the type system.
gptkbp:improves gptkb:Z_Garbage_Collector
Throughput
Security features
Java security architecture
gptkbp:includes gptkb:Pattern_Matching_for_instanceof
gptkb:Sealed_Classes
gptkb:Text_Blocks
bug fixes
performance improvements
new features
Hidden Classes
final release
release candidate
feature freeze
New AP Is for security management
Updates to the TLS protocol
ramp-down period
gptkbp:influences Future JE Ps
gptkbp:innovation New technologies.
gptkbp:inspiration Scala case classes
gptkbp:integrates_with Java FX.
gptkbp:introduced gptkb:Java_16
gptkb:JDK_11
gptkb:JDK_14
gptkbp:is_a_resource_for Available on Open JDK website.
Available tutorials and documentation.
Available educational resources.
gptkbp:is_adopted_by gptkb:Cloud_Computing_Service
Enterprise Applications
Startups
Government applications
Enterprise applications
Software vendors
Software Development Companies
Increasing.
High adoption rate.
Adopted in JDK 17.
High adoption rate in new projects.
High among Java developers.
Java developers on mac OS.
Widely adopted in Java applications.
Widely adopted in Java community.
gptkbp:is_analyzed_in Software Engineers
Technical Reports
Security audits
Technical papers
Performance Experts
gptkbp:is_cited_in Research Papers
Academic Research
Academic research
Technical Articles
Java security best practices
gptkbp:is_compared_to Similar to data classes in Kotlin.
gptkbp:is_compatible_with Backward compatible with existing Java code.
Backward compatible with existing interfaces.
gptkbp:is_considered Future Java versions
Ensures fields are final.
gptkbp:is_described_as gptkb:JDK_15
Java Tutorials
Introduces a new class type called records.
Introduces a new rendering pipeline for mac OS.
JDK 17 Release Notes
Provides a new class type for immutable data.
Enhance the Java programming language with record patterns.
the Records feature
New Security Improvements in JDK 11
Provides a mechanism for streaming events from the Java Flight Recorder.
Introduces sealed interfaces to restrict which classes can implement them.
Refinements to ZGC's concurrent memory management.
JDK 17 Release Schedule
gptkbp:is_discussed_in gptkb:Java_conferences
gptkb:Java_Magazine
Conferences
Webinars
Developer meetups
Java forums
Open JDK Mailing Lists
gptkbp:is_documented_in Release notes
User manuals
Java Documentation
Java SE Documentation
gptkbp:is_evaluated_by Security audits
Compliance checks
Security assessments
Performance Analysts
gptkbp:is_implemented_in gptkb:software
gptkb:video_game
gptkb:Open_JDK_11
Metal API
Completed.
Implemented in JDK 17.
JDK 14 implementation
Part of the Java language.
Java Virtual Machine.
ZGC Algorithm
Some implementation challenges noted.
Complexity in type hierarchy.
gptkbp:is_influenced_by Industry standards
Previous JE Ps
Previous JE Ps on security
gptkbp:is_integrated_with Interoperable with existing Java code.
gptkbp:is_motivated_by To provide more control over the class hierarchy.
gptkbp:is_part_of gptkb:Java_SE_11
gptkb:Java_SE_Platform
gptkb:software
Java platform evolution
Java security framework
Java security enhancements
gptkbp:is_promoted_by gptkb:Java_User_Groups
Java advocates
Java training programs
Java Advocates
gptkbp:is_recognized_by Industry Leaders
Java Community
Security experts
gptkbp:is_referenced_in Security guidelines
Technical documentation
Technical Blogs
Available in Open JDK.
gptkbp:is_related_to gptkb:JEP_330
gptkb:JEP_344
gptkb:JEP_391
gptkbp:is_reviewed_by gptkb:software_framework
Peer reviewers
Industry Analysts
Approved.
JDK Reviewers
Java Experts
Technical Reviewers
gptkbp:is_supported_by gptkb:Java_community
Community Contributions
Java user groups
Java certification programs
Open JDK Contributors
JDK 17 and later
gptkbp:is_tested_for gptkb:Java_SE_11_testing_suite
Performance Benchmarks
Quality assurance processes
Extensively tested.
Conducted with benchmarks.
Extensive testing conducted.
Security testing frameworks
Easier to test.
gptkbp:is_utilized_in gptkb:High_School
gptkb:software
Cloud services
Large Scale Systems
gptkbp:key gptkb:Java's_Future
Automatic generation of equals(), hash Code(), and to String() methods.
Sealed interfaces provide better control.
Compact syntax for declaring classes.
Java's Ecosystem
Java's Performance Strategy
Metal rendering.
Sealed modifier for interfaces.
gptkbp:language Type system enhancement.
gptkbp:latest_version 1.0
14.
JDK 17.
Java 17.
gptkbp:legacy Modern graphics in Java.
gptkbp:library Java standard library.
gptkbp:match_type Enhances pattern matching capabilities.
gptkbp:mod_support Can use final modifier.
gptkbp:nesting Can be nested within other classes.
gptkbp:next_edition Expected in future Java versions.
gptkbp:notable_album 2019-12-16
gptkbp:notable_production No breaking changes.
Easier graphics programming.
Significant impact on development practices.
gptkbp:objective mac OS rendering.
gptkbp:performance Improved.
Significant.
Minimal impact.
Optimized for performance.
Improved frame rates.
gptkbp:performed_by Follow best practices for usage.
Encourages best practices in data handling.
gptkbp:platform mac OS.
gptkbp:plot_summary Introduces a new way to define interfaces.
gptkbp:population_trend Aligns with trends in programming languages.
gptkbp:project Yes.
Available online.
Widely acknowledged.
Regularly provided.
Continued development.
Completed in 2021.
Java FX.
Managed by Open JDK.
Future-proof graphics.
Modernize graphics.
Used in various community projects.
gptkbp:propagation_method Automatically generated.
gptkbp:proposed_by gptkb:Database_Management_System
gptkb:JDK_17
gptkb:Brian_Goetz
gptkb:Java_17
gptkbp:provides documentation updates
Better default security settings
gptkbp:provides_access_to Can use public, private, protected.
Automatically generated accessors.
gptkbp:published_by September 2021
Technical Journals
Developer Magazines
gptkbp:regulatory_compliance Conforms to Java language specifications.
Meets Java standards.
gptkbp:related_concept Functional programming
Pattern matching
Data classes
Java SE.
Type safety, encapsulation.
gptkbp:related_jeps gptkb:JEP_359
gptkb:JEP_360
gptkb:JEP_361
gptkb:JEP_362
gptkb:JEP_363
gptkb:JEP_364
gptkb:JEP_365
gptkb:JEP_366
gptkb:JEP_367
gptkb:JEP_368
gptkb:JEP_369
gptkb:JEP_370
gptkb:JEP_371
gptkb:JEP_372
gptkb:JEP_373
gptkb:JEP_374
gptkb:JEP_375
gptkb:JEP_376
gptkb:JEP_377
gptkb:JEP_378
gptkb:JEP_379
gptkb:JEP_380
gptkb:JEP_381
gptkb:JEP_382
gptkb:JEP_383
gptkb:JEP_384
gptkb:JEP_385
gptkb:JEP_386
gptkb:JEP_387
gptkb:JEP_388
gptkb:JEP_389
gptkb:JEP_390
gptkb:JEP_391
gptkb:JEP_392
gptkb:JEP_393
gptkb:JEP_394
gptkb:JEP_395
gptkb:JEP_396
gptkb:JEP_397
gptkb:JEP_328
JEP 395, JEP 384.
JEP 360, JEP 361.
gptkbp:related_to gptkb:JEP_411
gptkb:JEP_384
gptkb:JEP_386
gptkb:JEP_387
gptkb:JEP_388
gptkb:JEP_389
gptkb:JEP_390
gptkb:JEP_391
gptkb:JEP_392
gptkb:JEP_393
gptkb:JEP_394
gptkb:JEP_395
gptkb:JEP_396
gptkb:JEP_397
gptkb:JEP_398
gptkb:JEP_399
gptkb:Pattern_Matching_for_instanceof
gptkb:Sealed_Classes
gptkb:Java_Flight_Recorder
gptkb:JEP_400
gptkb:JEP_401
gptkb:JEP_402
gptkb:JEP_403
gptkb:JEP_404
gptkb:JEP_405
gptkb:JEP_406
gptkb:JEP_407
gptkb:JEP_408
gptkb:JEP_409
gptkb:JEP_410
gptkb:JEP_412
gptkb:JEP_413
gptkb:JEP_414
gptkb:JEP_415
gptkb:JEP_416
gptkb:JEP_417
gptkb:JEP_418
gptkb:JEP_419
gptkb:JEP_420
gptkb:JEP_421
gptkb:JEP_422
gptkb:JEP_423
gptkb:JEP_424
gptkb:JEP_425
gptkb:JEP_426
gptkb:JEP_427
gptkb:JEP_428
gptkb:JEP_429
gptkb:JEP_430
gptkb:JEP_431
gptkb:JEP_432
gptkb:JEP_433
gptkb:JEP_434
gptkb:JEP_435
gptkb:JEP_436
gptkb:JEP_437
gptkb:JEP_438
gptkb:JEP_439
gptkb:JEP_440
gptkb:JEP_441
gptkb:JEP_442
gptkb:JEP_443
gptkb:JEP_444
gptkb:JEP_445
gptkb:JEP_446
gptkb:JEP_447
gptkb:JEP_448
gptkb:JEP_449
gptkb:JEP_450
gptkb:JEP_451
gptkb:JEP_452
gptkb:JEP_453
gptkb:JEP_454
gptkb:JEP_455
gptkb:JEP_456
gptkb:JEP_457
gptkb:JEP_458
gptkb:JEP_459
gptkb:JEP_460
gptkb:JEP_461
gptkb:JEP_462
gptkb:JEP_463
gptkb:JEP_464
gptkb:JEP_465
gptkb:JEP_466
gptkb:JEP_467
gptkb:JEP_468
gptkb:JEP_469
gptkb:JEP_470
gptkb:JEP_471
gptkb:JEP_472
gptkb:JEP_473
gptkb:JEP_474
gptkb:JEP_475
gptkb:JEP_476
gptkb:JEP_477
gptkb:JEP_478
gptkb:JEP_479
gptkb:JEP_480
gptkb:JEP_481
gptkb:JEP_482
gptkb:JEP_483
gptkb:JEP_484
gptkb:JEP_485
gptkb:JEP_486
gptkb:JEP_487
gptkb:JEP_488
gptkb:JEP_489
gptkb:JEP_490
gptkb:JEP_491
gptkb:JEP_492
gptkb:JEP_493
gptkb:JEP_494
gptkb:JEP_495
gptkb:JEP_496
gptkb:JEP_497
gptkb:JEP_498
gptkb:JEP_499
gptkb:JEP_500
gptkb:Java_Enhancement_Proposal
gptkbp:release_date September 2020
2021-09-14
September 2018
September 2021
March 2020.
March 2021.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_15
Aligned with JDK releases.
Included in JDK 17 release.
gptkbp:replaced_by Old rendering pipeline
gptkbp:requires gptkb:JEP_333
mac OS 10.15 or later
JDK Flight Recorder.
Must follow sealed interface rules.
gptkbp:sister_channel Open JDK mailing lists.
gptkbp:specifies gptkb:Java_SE_14
gptkb:Java_Language_Specification
Defines a new syntax for declaring classes.
Defines a new modifier for interfaces.
gptkbp:sponsor Java community.
Oracle, community.
gptkbp:status gptkb:Final
gptkb:Preview
Targeted
gptkbp:succeeded_by Adoption and performance.
gptkbp:supports Concurrent Operations
gptkbp:sustainability_initiatives Long-term support.
gptkbp:targets gptkb:JDK_17
gptkb:JDK_11
gptkb:JDK_14
gptkb:JDK_16
gptkbp:technique Can implement interfaces.
to String(), equals(), hash Code() are generated.
gptkbp:technology Java programming language.
Java SE.
Open GL, Vulkan.
gptkbp:title gptkb:Record_Patterns
gptkb:JFR:_Event_Streaming
gptkb:New_mac_OS_Rendering_Pipeline
Sealed Interfaces
Records (Preview)
Records (Standard Feature)
Records (standard feature preview)
ZGC: Concurrent Memory Management Refinements
gptkbp:type_of Supports type inference.
gptkbp:updates 2021-09-15
Planned.
gptkbp:use_case Performance analysis.
Data transfer objects
Data transfer objects.
Troubleshooting.
Capacity planning.
Debugging.
Used in frameworks to limit implementations.
Data transfer between layers.
gptkbp:used_in Functional programming.
gptkbp:user_experience Enhanced.
gptkbp:user_interface Can implement interfaces.
gptkbp:user_manual Refer to official Java documentation.
gptkbp:user_reviews gptkb:Mark_Reinhold
2021-05-10
Various contributors.
Various members of the Open JDK community.
gptkbp:uses Used for data transfer objects.
Used for simple data structures.
Used in Java frameworks.
gptkbp:vision Modern graphics support.
gptkbp:bfsParent gptkb:JEP_33
gptkb:Java_SE_14
gptkb:JDK_10
gptkb:JDK_14
gptkb:Java_10
gptkbp:bfsLayer 4