Listing 1 - 10 of 832 | << page >> |
Sort by
|
Choose an application
Dynamic method dispatch is a core feature of object-oriented programming by which the executed implementation for a polymorphic method is only chosen at runtime. In this paper, we present a specification and verification methodology which extends the concept of dynamic dispatch to design-by-contract specifications. The formal specification language JML has only rudimentary means for polymorphic abstraction in expressions. We promote these to fully flexible specification-only query methods called model methods that can, like ordinary methods, be overridden to give specifications a new semantics in subclasses in a transparent and modular fashion. Moreover, we allow them to refer to more than one program state which give us the possibility to fully abstract and encapsulate two-state specification contexts, i.e., history constraints and method postconditions. Finally, we provide an elegant and flexible mechanism to specify restrictions on specifications in subtypes. Thus behavioural subtyping can be enforced, yet it still allows for other specification paradigms. We provide the semantics for model methods by giving a translation into a first order logic and according proof obligations. We fully implemented this framework in the KeY program verifier and successfully verified relevant examples. We have also implemented an extension to KeY to support permission-based verification of concurrent Java programs. In this context model methods provide a modular specification method to treat code synchronisation through API methods.
Choose an application
Choose an application
Choose an application
Choose an application
Choose an application
Choose an application
Choose an application
Quickly gain the insight necessary to address a multitude of Java coding challenges using this succinct reference guide, Java 17 Quick Syntax Reference, Third Edition . Short, focused code examples will help you learn and master various existing and new Java source code elements. This edition includes the following additions to Java SE and OpenJDK, through Java 17: Pattern matching for switch and instanceof, Sealed classes and interfaces, Switch expressions, Text block multiline strings, Java module system, Private methods in interfaces, and Type inference for local variables. You won't find any technical jargon, bloated samples, drawn out history lessons or witty stories in this book. What you will find is a language reference that is concise, to the point and highly accessible. The book is packed with useful information and is a must-have for any Java programmer. What You Will Learn Run a Java file with a single command Learn what a switch expression is and how to use it Use pattern matching Code with Java modules Create text blocks to handle multiline strings Learn what sealed classes are and how to use these and more Who This Book Is For Those with prior experience with Java who want a quick and handy reference.
Choose an application
Expand your knowledge of Java with this entertaining learning guide, which features 100+ exercises and programming challenges. Java Challenges will prepare you for your next exam or job interview, and covers many practical topics, such as strings, arrays, data structures, recursion, and date and time. The APIs and other material included in this book are Java 17 compatible. Each topic is addressed in its own separate chapter, starting with an introduction to the basics and followed by multiple exercises of varying degrees of difficulty, helping you to improve your programming skills effectively. Detailed sample solutions, including the algorithms used for all tasks, are included to maximize your understanding of each area. Author Michael Inden also describes alternative solutions and analyzes possible pitfalls and typical errors. Three appendices round out the book: one covering JShell, which is often helpful for trying out the code snippets and examples in the book, followed by an introduction to JUnit 5 for unit testing and verifying solutions, while the final appendix explains O-notation for estimating performance. After reading this book, you'll be prepared to take the next step in your career or tackle your next personal project. All source code is freely available for download via the Apress website. What You Will Learn Improve your Java knowledge by solving enjoyable but challenging programming puzzles Solve mathematical problems, recursions, strings, arrays and more Manage data processing and data structures like lists, sets, maps Handle advanced recursion as well as binary trees, sorting and searching Gamify key fundamentals for fun and easier reinforcement Who This Book Is For Professional software developers, makers, as well as computer science teachers and students. At least some prior experience with Java programming is recommended.
Choose an application
Write your first code in Java 17 using simple, step-by-step examples that model real-word objects and events, making learning easy. With Java 17 for Absolute Beginners you'll be able to pick up the concepts without fuss. It teaches Java development in language anyone can understand, giving you the best possible start. You'll see clear code descriptions and layout so that you can get your code running as soon as possible. Author Iuliana Cosmina focuses on practical knowledge and getting you up to speed quickly-all the bits and pieces a novice needs to get started programming in Java. First, you'll discover what type of language Java is, what it is good for, and how it is executed. With the theory out of the way, you'll install Java, choose an editor such as IntelliJ IDEA, and write your first simple Java program. Along the way you'll compile and execute this program so it can run on any platform that supports Java. As part of this tutorial you'll see how to write high-quality code by following conventions and respecting well-known programming principles, making your projects more professional and efficient. Java 17 for Absolute Beginners gives you all you need to start your Java programming journey. No experience necessary. After reading this book, you'll come away with the basics to get started writing programs in Java. What You Will Learn Get started with Java 17 from scratch Use data types, operators, and the stream API Install and use the IntelliJ IDEA and the Gradle build tool Exchange data using the new JSON APIs Play with images using multi-resolution APIs Implement the publish-subscribe architecture Who This Book Is For Those who are new to programming and who want to start with Java.
Listing 1 - 10 of 832 | << page >> |
Sort by
|