<?xml version="1.0" encoding="ISO-8859-1"?>











<rss version="2.0">
  <channel>
    <title>The Java(tm) Specialists' Newsletter</title>
    <link>https://www.javaspecialists.eu</link>
    <description>The Java(tm) Specialists' Newsletter features advanced articles and tips surrounding the Java Programming Language</description>
    <language>en</language>
    <copyright>Copyright 2000-2020, Dr Heinz Max Kabutz</copyright>
    <managingEditor>Dr Heinz Kabutz</managingEditor>
    <webMaster>Dr Heinz Kabutz</webMaster>
    <ttl>1440</ttl>
    
    <item>
      <title>Issue 275 - EnhancedStream with Dynamic Proxy</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue275.html</link>
      <pubDate>Sat, 23 Nov 2019</pubDate>
      <description>In our previous newsletter we enhanced Java 8 Streams by decorating them with an EnhancedStream class.  The code had a lot of repetition, which often leads to bugs if written by hand.  In this newsletter we use a dynamic proxy to create an EnhancedStream.  The resulting code is shorter and more consistent.</description>
    </item>
    
    <item>
      <title>Issue 274 - EnhancedStream</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue274.html</link>
      <pubDate>Fri, 22 Nov 2019</pubDate>
      <description>Java 8 Streams have a rather narrow-minded view of what makes objects distinct.  In this newsletter, we enhance Streams to allow a more flexible approach for deciding uniqueness.</description>
    </item>
    
    <item>
      <title>Issue 273 - Truly Public Methods</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue273.html</link>
      <pubDate>Tue, 1 Oct 2019</pubDate>
      <description>Class.getMethods() returns all the public methods in this class and the classes in its ancestry.  However, we cannot necessarily call these methods, for example if they are declared in a private inner class or a lambda.  In this newsletter we attempt to find all truly public methods.</description>
    </item>
    
    <item>
      <title>Issue 272 - Hacking Enums Revisited</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue272.html</link>
      <pubDate>Sat, 7 Sep 2019</pubDate>
      <description>In a previous newsletter, we looked at how we could dynamically add new enums and also rewire affected switch statements.  Due to improvements in Java security, our old approach needs to be updated for Java 12.</description>
    </item>
    
    <item>
      <title>Issue 271 - HttpClient Executors</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue271.html</link>
      <pubDate>Wed, 21 Aug 2019</pubDate>
      <description>Java 11 added the HttpClient to give us a better way to send HTTP requests.  It supports asynchronous and synchronous mode.  HTTP2 comes out of the box.  The threading is a bit funky though and Professor Cay Horstmann explores how things work underneath the covers.</description>
    </item>
    
    <item>
      <title>Issue 270 - Excursions into Deduplication</title>
      
      <link>https://www.javaspecialists.eu/archive/Issue270.html</link>
      <pubDate>Fri, 31 May 2019</pubDate>
      <description>When are Strings deduplicated?  How can we find out whether they are of any benefit in our application?  How much does it cost in terms of CPU?  We try to show you how we can get this from the deduplication statistics provided by the JVM.</description>
    </item>
    
  </channel>
</rss> 

