JEP 360

GPTKB entity

Statements (790)
Predicate Object
gptkbp:instance_of gptkb:Java_Enhancement_Proposal
gptkbp:bfsLayer 4
gptkbp:bfsParent gptkb:JEP_389
gptkb:JEP_33
gptkb:JDK_10
gptkb:JDK_14
gptkb:Java_10
gptkbp:addresses memory allocation
Performance issues with previous pipelines.
gptkbp:affects Java developers
gptkbp:aims_to gptkb:Z_Garbage_Collector
simplify type checks
improve developer productivity
improve observability of Java applications
Control which classes can extend or implement a class or interface.
Replace deprecated Open GL support.
gptkbp:allows Cannot extend sealed classes outside the defined hierarchy.
Only permitted subclasses can extend sealed classes.
Cannot extend sealed classes outside permitted subclasses.
conditional execution based on type
gptkbp:approves March 2021
gptkbp:architectural_style Encourages modular architecture.
gptkbp:author gptkb:Brian_Goetz
gptkb:J._B._Rainsberger
JDK Release Team
gptkbp:benefits Real-Time Systems
High-Performance Applications
Improves type safety.
Enhanced control over class hierarchies
Supports pattern matching.
Facilitates better API design.
Reduces the risk of unintended subclassing.
Enables pattern matching for sealed types.
Facilitates better code organization.
Encourages a more declarative style of programming.
Improved performance and efficiency for Java applications on mac OS.
Enables more expressive code.
Provides better control over class hierarchies.
Encourages better API design.
May introduce complexity in type hierarchies.
gptkbp:can_be_extended_by future JE Ps
gptkbp:challenges Balancing flexibility and control.
May introduce complexity in understanding class hierarchies.
Requires changes in existing codebases.
Addresses challenges in development.
gptkbp:code Increases readability.
gptkbp:collaborated_with gptkb:academic_research
Open Source Projects
Industry Partners
open-source projects
industry consortia
Java development teams
By Apple and Open JDK contributors.
By Java and Apple engineers.
gptkbp:collaborations Facilitates collaboration among developers.
Enhances collaboration among teams.
gptkbp:community_engagement Active discussions in forums.
Hackathons and coding challenges.
Active engagement with Java user groups.
gptkbp:community_events Workshops and meetups discussing sealed classes.
gptkbp:community_impact Fosters innovation.
Encourages cleaner code.
Promotes best practices in software development.
gptkbp:community_involvement Encouraged for feedback.
Involvement from various stakeholders.
gptkbp:community_support Active community discussions.
Strong support from the Java community.
Slack channels and forums.
Strong backing from Java developers.
gptkbp:contains API changes
security updates
release milestones
gptkbp:contributed_to Java's type system
observability in cloud environments
Java graphics stack.
gptkbp:contribution Contributed to the evolution of Java.
Enhances type safety.
Open for community contributions.
Enhances the expressiveness of the Java type system.
Contributed by multiple Java developers.
gptkbp:cultural_impact Fosters a culture of innovation.
Promotes a culture of quality.
gptkbp:deployment Simplifies deployment.
gptkbp:design Encapsulation and control.
Encapsulation and abstraction.
gptkbp:developer Integrates well with Dev Ops practices.
Contributes to success in software projects.
Enhances QA processes.
Enhances quality of software development.
Scheduled for JDK 17.
gptkbp:discusses Open JDK mailing list.
https://openjdk.java.net/jeps/360
Ongoing discussions in the Java community.
gptkbp:economic_impact Creates new opportunities in development.
Enhances overall software quality.
Mitigates risks in development.
Sets trends in software development.
gptkbp:ecosystem Strengthens Java's type system.
gptkbp:education Growing user base.
Gradually increasing.
Increased interest in Java language features.
gptkbp:enables event-driven architectures
event filtering and aggregation
More expressive type hierarchies.
gptkbp:encourages Adoption of Metal by developers.
gptkbp:end_date Expected in future JDK releases
gptkbp:enhances performance monitoring
type inference
Planned based on user input.
concurrent memory management
Potential for more sealed features.
Visual quality of applications.
gptkbp:error_handling Improved error handling with sealed types.
gptkbp:example Sealed class example in Java.
Sealed classes can be used in pattern matching.
Used in enterprise applications.
Defining a sealed class hierarchy for shapes.
Defining a sealed interface for event listeners.
sealed class Shape permits Circle and Square.
sealed interface Event Listener permits Mouse Listener and Key Listener.
sealed class Shape permits Circle, Square.
Defining a sealed class with permitted subclasses.
Used in defining a restricted class hierarchy.
sealed class Shape with permitted subclasses Circle and Square.
Used in frameworks to enforce specific class structures.
Sealed class with non-sealed subclasses.
Allows defining a sealed class with permitted subclasses.
gptkbp:facilitates integration with external monitoring tools
Better API design
Modern graphics techniques.
gptkbp:features Pattern matching for instanceof.
gptkbp:feedback Generally positive.
Positive feedback from early adopters.
Surveys and discussions.
Open JDK mailing lists.
Positive feedback from developers.
Positive response from developers.
Collected from early adopters.
Positive reception from the Java community.
Surveys and polls.
Incorporated into future revisions.
Gathered from various Java user groups.
gptkbp:first_appearance gptkb:JDK_17
gptkb:JDK_16
gptkbp:focus gptkb:Company
gptkbp:focuses_on Java language enhancements
gptkbp:formulation Uses the 'sealed' keyword.
Introduces new keywords 'sealed', 'non-sealed', and 'permits'.
gptkbp:future_plans Further enhancements in future JD Ks.
Further enhancements to sealed types.
Potential enhancements to sealed types.
Evaluate performance implications.
Further refinements based on user feedback.
Gather community feedback.
Consider integration with records.
Explore further enhancements to sealed types.
Refine documentation.
Increased focus on type safety.
Research on sealed types.
Enhance type safety and usability.
gptkbp:goal Enhance type safety.
gptkbp:has_documentation Official JDK documentation.
Encourages better documentation practices.
Detailed in the official JEP documentation.
gptkbp:has_impact_on Software development practices.
gptkbp:historical_impact Supports object-oriented programming.
Influences software development trends.
Encourages refactoring.
https://www.w3.org/2000/01/rdf-schema#label JEP 360
gptkbp:impact Improves type safety.
Affects how developers design class hierarchies.
Improves the expressiveness of the type system.
Improves maintainability and readability of code.
Promotes better software design.
Improves maintainability and security of code.
Supports agile methodologies.
Facilitates better design patterns.
Increases effectiveness of development efforts.
Enhances graphics rendering capabilities.
Enhances pattern matching and type checking.
gptkbp:improves code readability
throughput
Code maintainability
application responsiveness
diagnostics capabilities
Rendering speed.
gptkbp:includes bug fixes
performance improvements
new features
concurrent marking
concurrent relocation
Support for advanced rendering techniques.
gptkbp:industry Adopted by major Java frameworks.
gptkbp:influences gptkb:Java_Language_Specification
gptkbp:innovation Drives innovation in software development.
gptkbp:integrates_with Enhances CI/ CD processes.
gptkbp:introduced gptkb:Java_14
gptkb:Java_16
gptkb:JDK_15
gptkb:Java_17
gptkbp:is_a_framework_for Frameworks adapt to sealed classes.
Frameworks leverage sealed classes.
gptkbp:is_a_resource_for Available for developers.
Available tutorials and documentation.
Git Hub repositories with examples.
Tutorials and documentation available.
gptkbp:is_a_tool_for Encourages development of new tools.
Tools evolve to support sealed classes.
Tools support sealed classes.
gptkbp:is_adopted_by Enterprise Applications
Startups
enterprise applications
software companies
startups
Java Developers
Java developers
Widely adopted in modern Java applications.
Java user community
Gradual adoption in projects.
High among Java developers.
Increasing among Java developers.
Java developers on mac OS.
Java developers.
Java frameworks.
Learning curve for new syntax.
Open-source projects.
Widely adopted in Java SE 17.
Java enterprises.
Java startups.
mac OS developers.
Taught in Java courses.
Adopted by several Java libraries.
gptkbp:is_aimed_at Java developers
gptkbp:is_aligned_with gptkb:Java_SE_16
industry standards
Apple's graphics strategy.
gptkbp:is_analyzed_in Code Reviews
Performance Benchmarks
Java performance studies.
Java design patterns.
Software architecture reviews.
Software engineering studies.
gptkbp:is_celebrated_in gptkb:Java_conferences
gptkbp:is_cited_in Java research papers.
Java SE 17 specifications
Java programming research papers
gptkbp:is_compared_to Similar to sealed types in other languages.
Java 14 features.
Java 16 features.
Other language features.
Other programming languages.
Similar to interfaces but with more control.
Compared to traditional inheritance.
gptkbp:is_compatible_with gptkb:Java_SE_14
Java Applications
Backward compatible with existing Java code.
Latest mac OS versions.
Metal 2 and later.
gptkbp:is_considered future JDK releases
gptkbp:is_described_as gptkb:JFR_Event_Streaming
tutorials
Developer Guides
Technical Articles
technical articles
Technical blogs.
JDK 15 Release Notes
Introduces sealed classes and interfaces to restrict which classes can extend or implement them.
Introduces sealed classes and interfaces.
A new rendering pipeline for mac OS using Apple's Metal framework.
JDK 17 Release Schedule
Introduces sealed types to restrict which classes can extend or implement them.
gptkbp:is_designed_to September 2021
gptkbp:is_discussed_in gptkb:software_framework
gptkb:Java_Enhancement_Proposal
Online Forums
meetups
online courses
Java Conferences
technical blogs
Technical blogs.
Java conferences.
Java forums
Java forums.
Java podcasts
Java events
Java user groups.
Java podcasts.
Java webinars.
gptkbp:is_documented_in gptkb:API
release notes
technical specifications
user manuals
JEP Index
Java Documentation
JDK documentation
Open JDK documentation
Open JDK website
official JDK documentation
Official Java documentation.
Open JDK documentation.
gptkbp:is_evaluated_by Performance Metrics
Quality Assurance Teams
technical committees
industry analysts
peer reviews
Java experts
software architects
Java certification programs
Java assessments.
Java code reviews.
Java performance metrics
Java experts.
Usability and performance.
Based on developer satisfaction.
Based on usability and performance.
Ongoing evaluation by the JEP committee.
gptkbp:is_expected_to enhance performance
Enhance user experience.
Set a standard for future graphics pipelines.
gptkbp:is_explored_in research papers
case studies
Java workshops.
Java meetups.
Java hackathons.
Java online courses.
gptkbp:is_implemented_in gptkb:JDK_17
gptkb:software
gptkb:video_game
gptkb:ZGC
gptkb:Java_Enhancement_Proposal
gptkb:chess_match
Implemented in the Java language.
In progress.
Under development.
Completed.
Java programming language.
Code examples provided.
Ensuring backward compatibility.
Implemented in the Java language and the Java Virtual Machine.
Part of the Java language specification
Part of the Java language.
Addressing edge cases.
Requires changes to the Java compiler.
Part of the Java SE 17 release.
Java compiler.
Detailed in the JEP document.
Ensuring compatibility with existing features.
Requires compiler updates.
Requires updates to the Java compiler.
gptkbp:is_influenced_by user feedback
community feedback
User feedback.
Previous JE Ps
Functional programming concepts.
Graphics performance trends.
gptkbp:is_influential_in Java Development
Software Engineering Practices
Java development practices
gptkbp:is_integrated_with gptkb:Cloud_Computing_Service
data analytics tools
monitoring dashboards
CI/ CD pipelines
gptkbp:is_linked_to gptkb:Java_SE_19
gptkb:Java_SE_18
gptkbp:is_motivated_by Improve the modeling of hierarchies in Java.
To provide a more declarative way than access modifiers to restrict class hierarchies.
Improve the modeling of hierarchies.
Enhance the expressiveness of the type system.
Improve the expressiveness of the type system.
Enhance the Java programming language with more control over class hierarchies.
gptkbp:is_open_source Used in open-source projects.
gptkbp:is_optimized_for Large Heap Sizes
High-resolution displays.
Apple silicon.
gptkbp:is_part_of gptkb:Java_SE_Platform
gptkb:Java_SE_15
gptkb:Java_Enhancement_Proposal
Java Ecosystem
Java 15 Features
Java SE 17.
Java SE platform.
Java language evolution.
Java Development Lifecycle
Java 14 release
gptkbp:is_promoted_by gptkb:Database_Management_System
gptkb:Java_User_Groups
social media campaigns
influencers
webinars
Java meetups
Java user groups
Java advocates
Java advocates.
Java community.
Java conferences.
Java influencers
Java Advocates
Java influencers.
Java newsletters.
Java user groups.
gptkbp:is_recognized_by industry standards
Java community leaders
gptkbp:is_referenced_in gptkb:document
Research Papers
API documentation
developer guides
Java specifications
Java textbooks
white papers
Java blogs.
Java documentation.
Java forums.
Java tutorials.
other JE Ps
gptkbp:is_related_to gptkb:JEP_411
gptkb:JEP_377
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: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
Garbage Collection Tuning
JEP 411: Deprecate the Security Manager.
JEP 409: Sealed Interfaces.
JEP 383.
gptkbp:is_reviewed_by gptkb:Open_JDK_community
gptkb:software_framework
gptkb:board_game
Approved
Java Community
Technical meetings.
Java community.
Java conferences.
Open JDK mailing lists
gptkbp:is_standardized_by Establishes new standards.
Sets new standards in Java.
gptkbp:is_supported_by gptkb:software
gptkb:Java_community
gptkb:chess_match
Community Contributions
User Feedback
community contributions
community forums
user documentation
training materials
Java user groups
open-source libraries
vendor support
Java ID Es
Java Development Kit (JDK).
Java ID Es.
Java community.
Java libraries.
Java 15.
Java tools.
Java FX 17.
Java 17 and later.
gptkbp:is_tested_for gptkb:software
Java applications
production environments
load testing tools
Java testing frameworks.
Java Testing Frameworks
QA environments
Extensively tested in the JDK.
Java FX applications.
Metal framework.
Improves testing methodologies.
Improves testing strategies.
gptkbp:is_used_in production systems
Enterprise applications.
gptkbp:is_utilized_in gptkb:software
gptkb:Cloud_Computing_Service
root cause analysis
capacity planning
performance tuning
system administrators
system diagnostics
Java applications
cloud computing solutions
application performance management
service level monitoring
Dev Ops teams
Cross-platform applications.
Graphics-intensive applications.
gptkbp:key gptkb:Sealed_classes
Sealed classes and interfaces
Sealed interfaces
Permits subclasses to be defined in the same package or module.
Allows for more expressive type hierarchies.
Permits subclasses to be defined only in the same package or module.
Enhances pattern matching.
Permits and non-permits for subclasses
Allows class authors to control the inheritance hierarchy.
gptkbp:language Type system enhancement.
gptkbp:latest_version 17.0.0
JDK 17 and later.
1.0 (Preview)
gptkbp:library Encourages library authors to use sealed types.
Libraries utilize sealed classes.
gptkbp:lifespan Affects lifecycle management practices.
gptkbp:maintenance Simplifies maintenance.
Facilitates easier maintenance.
gptkbp:marketing_strategy Influences strategies used in development.
gptkbp:notable_album January 2021
gptkbp:notable_production Streamlines class design.
gptkbp:operates_in September 2029
gptkbp:outcome Leads to better outcomes in development.
gptkbp:part_of gptkb:Java_SE_17
gptkbp:performance Minimal impact on performance.
Minimal performance overhead.
other monitoring solutions
No significant impact.
Improves efficiency in development.
gptkbp:performed_by Use sealed classes for defining clear AP Is.
gptkbp:population_trend Increased use of sealed types in Java.
gptkbp:presented_by gptkb:Java_conferences
gptkbp:products Improves code quality.
gptkbp:project Java SE 17.
gptkbp:proposed_by gptkb:Database_Management_System
gptkb:JDK_17
gptkb:Pattern_Matching_for_instanceof
gptkb:James_Gosling
gptkb:JDK_15
gptkb:JDK_16
gptkb:Javac_Team
gptkb:TV_Show
March 2020
JDK Enhancement-Proposal Committee
streaming of Java Flight Recorder events
gptkbp:provides release notes
better performance
enhanced language features
API for event streaming
Better integration with mac OS features.
gptkbp:published_by September 2020
Open JDK mailing lists.
Java community newsletters.
gptkbp:reduces boilerplate code
pause times
gptkbp:regulatory_compliance Conforms to Java language specifications.
Conforms to the Java Language Specification.
Requires explicit declaration of permitted subclasses.
Allows final subclasses.
Allows for nested sealed classes.
Allows for sealed types in annotations.
Allows for sealed types in deserialization.
Allows for sealed types in lambda expressions.
Allows for sealed types in method handles.
Allows for sealed types in method references.
Allows for sealed types in modules.
Allows for sealed types in reflection.
Allows for sealed types in type annotations.
Allows for sealed types in type patterns.
Cannot be subclassed outside of permitted classes.
Must declare permitted subclasses.
Supports sealed interfaces with non-sealed implementations.
Supports non-sealed subclasses.
Supports sealed types in annotations.
Supports sealed types in dynamic proxies.
Supports sealed types in functional interfaces.
Supports sealed types in generics.
Supports sealed types in modules.
Supports sealed types in records.
Supports sealed types in serialization.
Supports sealed types in switch expressions.
Supports sealed types in type erasure.
Supports sealed types in type inference.
gptkbp:related_concept gptkb:Inheritance
Interfaces
Polymorphism
Pattern Matching
Pattern matching
Type safety
Abstract classes
Software maintainability
API design principles
Java Language Specification.
Java SE specifications.
Java language enhancements
Java SE 17 features
Code security
gptkbp:related_jeps gptkb:JEP_411
gptkb:JEP_384
gptkb:JEP_390
gptkb:JEP_394
gptkb:JEP_395
gptkb:JEP_396
gptkb:JEP_397
gptkb:JEP_398
gptkb:JEP_399
gptkb:JEP_181
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
JEP 1100
JEP 409.
gptkbp:related_to gptkb:JEP_382
gptkb:Company
gptkb:Java_SE_Platform
gptkb:Java_Flight_Recorder
Pattern Matching
Metal API
instanceof operator
gptkbp:release_date September 2020
September 2021
Expected in JDK 17.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_17
gptkbp:released_in Java 17 release notes.
Java 17 launch events.
gptkbp:reliability Enhances QA processes.
gptkbp:replaced_by Existing Open GL pipeline
gptkbp:requires mac OS 10.14 or later
JDK 14 or later
JDK 15 or later
gptkbp:research Java programming studies
gptkbp:research_and_development Encourages best practices.
Encourages modern practices.
Streamlines development processes.
Promotes best practices in software development.
Affects the entire software development lifecycle.
Influences methodologies used in development.
gptkbp:runtime Affects software lifecycle management.
gptkbp:security_features Enhances security by limiting subclassing.
gptkbp:specifies Java Language Specification.
Defines how sealed classes and interfaces behave.
gptkbp:status gptkb:Final
gptkb:Preview
Standard Feature
gptkbp:subject Java enhancement proposals
gptkbp:succeeded_by Documented use cases.
Measured by adoption and usage.
Adoption rate and community feedback.
Community support and feedback.
Community engagement and feedback.
gptkbp:supports real-time event analysis
High-performance graphics applications.
gptkbp:targets gptkb:JDK_17
gptkb:JDK_15
gptkbp:technology Java programming language.
Java SE.
Java Modules.
gptkbp:title gptkb:Sealed_Classes
gptkb:New_mac_OS_Rendering_Pipeline
Sealed Classes (Preview)
Sealed Types
Sealed Classes and Interfaces
ZGC: Concurrent Memory Management Modifications
Sealed Types (Preview)
gptkbp:tutorials Available online.
gptkbp:updates subsequent JE Ps
gptkbp:use_case Frameworks and libraries.
Frameworks and libraries requiring strict type hierarchies.
Frameworks requiring strict type hierarchies.
gptkbp:user_experience Improves user experience.
Improved user experience in type management.
gptkbp:user_manual Comprehensive user guides available.
gptkbp:user_reviews gptkb:Brian_Goetz
gptkb:Venkat_Subramaniam
gptkb:Shenandoah
gptkb:Mark_Reinhold
gptkb:Jesse_Glick
Community review and feedback.
JDK Committers
Various members of the Java community
Various members of the Open JDK community.
Various members of the Java community.
gptkbp:uses Used to define a restricted class hierarchy.
Used in defining AP Is that require strict control over inheritance.
Use in API design.
gptkbp:vision Integrate with future Java features.
gptkbp:website https://openjdk.java.net/jeps/360