Turkhackteam.net/org - Turkish Hacking & Security Platform  
Geri git   Turkhackteam.net/org - Turkish Hacking & Security Platform >
Programlama
> Java


Java 11 Hk.

Java

Yeni Konu aç Cevapla
 
Seçenekler
Alt 3 Hafta önce   #1
  • Albay
  • Üye Bilgileri
Üyelik tarihi
05/2013
Nereden
İstanbul
Mesajlar
Konular


  
Java 11 Hk.



Selamun aleykum arkadaşlar sizlere elimden geldiğince java 11 ile gelen yeni yenilikleri anlatmaya çalışacağım.

Predicate from java.util.regex.Pattern

Pattern methodları olan Predicate() ve asMatchPredicate() (Java 11'den itibaren) bir Predicate <String> yollar; böylece kullandığımız regexde , örneğin data structures girdileri filtrelemek veya silmek için bir ölçüt olarak kullanılabilir.

Methodlar aşağıdaki gibidir:

Methode Implementierung
Predicate<String> asPredicate() | return s -> matcher(s).find()
Predicate<String> asMatchPredicate() | return s -> matcher(s).matches();


asPredicate() belirli bir bölümü match eder. asMatchPredicate() komple bir stringi.

Kod:
 

List<String> list = new ArrayList<>( Arrays.asList( "", "69cool", "1898", "Sisi" ) ); 

list.removeIf( Pattern.compile( "\\d+" ).asPredicate().or( String::isEmpty ) ); 

System.out.println( list );            // [Sisi] 

asPredicate()'i asMatchPredicate() ile degistirdigimizde output [69cool, Sisi] olacaktir.
ByteArrayOutputStream

ByteArrayOutputStream, yazı dahili olarak bir byte Array'de saklayan bir OutputStream'dir. Dizinin boyutu yazılı verilere göre dinamik olarak artar.

Kod:
class java.io.ByteArrayOutputStream 
extends OutputStream
ByteArrayOutputStream()
Verileri internal bir byte Array'e eşleyen yeni bir OutputStream objekt'i oluşturur. ByteArrayOutputStream(intsize)
İstenilen başlangıç puffer capasity'ne sahip bir ByteArrayOutputStream üretir.

OutputStream olarak, ByteArrayOutputStream, tümü IOException olan tüm methodları devralır. Bu, belleğe yazan bir akışla olmaz. Bu nedenle, Java 11'de bir IOException atamayan yeni bir yöntem writeBytes(byte []) tanıtıldı. En önemli method, byte[] içeriğini toByteArray() yöntemidir.

Kod:
reset()
dahili arabelleği temizler.

Kullanışlı bir yöntem
Kod:
writeTo(OutputStream out)
.

Onun arkasında görünmez iç alandaki bu bizim için yazan bir

Kod:
out.write(buf, 0, count)
. Byte Array'i bir string'e dönüştüren üç toString(...) yöntemi vardır: toString(String charsetName) ve toString(Charset charset) - Java 10'dan beri - karakter kodlaması argüman olarak iletilir ve ByteArrayOutputStream, toString() öğelerini geçersiz kılar. standart platform karakter kodlamasını alan superclass nesnesi.

Charsequence();

Java 11 ile gelen yeni bir özellikte Charsequence methodundan geliyor.
Compare(..) 2 Charsequence objekti lexicographically olarak karsilastirir.

Kod:
interface java.lang.CharSequence 
 static int compare(CharSequence cs1, CharSequence cs2)
2 stringi lexicographically olarak karsilastirir. Statik yöntem şu anda CharBuffer, Segment, String, StringBuffer, StringBuilder'ın tüm kombinasyonlarının sadece bu tek yöntemle kontrol edilebilmesi avantajına sahiptir. Karşılaştırma 0 verirse, stringlerin aynı karakterleri içerdiğini biliyoruz demektir.

Unicode toString

Unicode karakterini bir string'e dönüştürmek için static overloaded string method olan valueOf(char) kullanabiliriz. Benzer bir yöntem tam tersi için, toString(char) static yönteminde bulunur. Her iki yöntem de Unicode karakterinin yalnızca 2 byte uzunluğunda olması kısıtlaması vardır. String valueOfCodePoint(int) de bildirir. Böyle bir yöntem daha önce karakterde eksikti; Sadece Java 11'de toString(int) eklendi; dahili olarak valueOfCodePoint(int)'de.

String Control

String objektleri, temsil ettikleri karakter dizisini dahili olarak yönetir ve objektin özelliklerini açığa çıkarmak için çeşitli methodlar sağlar. Zaten length() hiç birimize yabancı değil.

String için, stringde ki karakter sayısını döndürmek için uygulanır (stringin uzunluğu). String'in karakter içermediğini öğrenmek için, length() == 0'a ek olarak isEmpty() methodunu kullanabilirsiniz. Java 11'de, String'in boş olup olmadığını veya yalnızca beyaz boşluktan oluşup oluşmadığını kontrol eden method, isBlank() eklendi; Beyaz boşluk, Character.isWhitespace(int) öğesinin doğru görüntülendiği herhangi bir karakterdir.

IslemOutput

„“.length()0„
“.isEmpty() true“
".length() 1“
„.isEmpty() false“
„.isBlank() true
String s = null; s.length();NullPointerException


Repeat of String

Java 11'de bir Objektmethod olan repeat(int count) eklendi, string'in tekrarlanmasını saglar.

Örnek olarak:

Verilen String'i 3 defa tekrarlayınız;

Kod:
String s = „tu“;  

System.out.println( s.repeat( 3 ) );    // tututu
Java 11 ile bu method gelmeden önce, buna yaklaşık kullanımlar su şekilde idi.

Kod:
int n = 3; 

String t = new String( new char[ n ] ).replace( „\0“, s ); 

System.out.println( t );                // tututu
WhiteSpace

Bir kullanıcı girdisinde veya yapılandırma dosyasında genellikle boşluk veya sekme gibi bir metin boşluğun önemli kısmının önünde veya arkasında yer alır. İşleme başlamadan önce çıkarılmalıdır.

String sınıfı trim() ve Java 11 ile gelen, strip(),stripLeading() ve stripTrailing() öğelerinden beri sunar.

Aralarında ki fark:

MethodReplace

trim() String'in başında ve sonunda, tüm kod noktaları uzaydan küçük veya ona eşit, U + 0020 '
strip()Character.isWhitespace(int) tanımlandıktan sonra boşluk olan String'in başında ve sonunda bulunan tüm karakterler

stripLeading() strip() gibi lakin sadece String'in basini alir.

stripTrailing() strip() gibi lakin sadece String'in sonunu alir.


trim() ve stripXXX() arasında ki farklar ;

Dört method'da String'in ortasında ki boşlukları kaldırmaz.

Kod:
String s = “ \t Elime konus lutfen.\n  \t „;
System.out.println( „‚“ + s.trim() + „‚“ ); // ‚Elime konus lutfen.‘
Örnek: Bir String'i hangi çıktıda bütün boşluklar kaldırılır test edin.
Kod:
boolean isBlank = „“.equals( s.trim() );


 Alternatif:


 boolean isBlank = s.trim().isEmpty();
HTTP Client ve WebSocket API

HTTP standardı zaten nispeten eski ve kökenleri 1990'ların başında atılmıştır. Resmi olarak, sürüm 1.0 1996'da kabul edildi, aynı zamanda Java 1.0 yayımlandı. 2015'te HTTP / 2 geçildi ve standartta birçok iyileştirme yapıldı. Ancak, HTTP etrafındaki Java class'ları, Apache HttpComponents (Apache HttpComponents – Apache HttpComponents) veya Java için Asynchronous Http ve WebSocket Client kitaplığı gibi açık kaynak kitaplıklarını içerecek şekilde güncelleştirilmemiştir (http://github.com/AsyncHttpClient / async http istemcisi boşlukları doldurdu.

Modul.java.net.http

HTTP / 2'nin yeni özellikleriyle HttpURLConnection gibi mevcut HTTP sınıflarını genişletmek yerine, Oracle java.net.http modülünü tanıttı. İlk kez, Java 9'da incubator'da teslim edildi ve Java 11'de kodlandı. Senkronize çağrılara ek olarak, modern bir CompletableFeature sunan asenkron çağrıları da yapabilirsiniz.

java.net.http içinde barındırdığı paketler ;

HttpClient
HttpRequest, HttpResponse
WebSocket

Hemen bir örneğe bakalım ;

Kod:
try {    
    URI uri = new URI( "https://yildiztilbe.com/" );

    HttpRequest request = HttpRequest.newBuilder().uri( uri ).GET().build();

    HttpResponse<String> response = HttpClient.newHttpClient().send( request, BodyHandlers.ofString() );

    System.out.println( response.body() );

}  
catch ( URISyntaxException | IOException | InterruptedException e ) {

    e.printStackTrace();  
}
Bütün HttpRequest Methodları abstract'tır.

Kod:
abstract class java.net.http.HttpRequest
Kod:
Optional<HttpRequest.BodyPublisher> bodyPublisher()

boolean expectContinue()

HttpHeaders headers()

String method()

Builder newBuilder()

Builder newBuilder(URI uri)

Optional<Duration> timeout()

URI uri()

Version version()


HttpClient isteği yürütürse, bir HttpResponse alırız; Aşağıdaki yöntemleri bildirir:

Kod:
public interface java.net.http.HttpResponse<T>
Kod:
T body()

HttpHeaders headers()

Optional<HttpResponse<T>> previousResponse()

HttpRequest request()

Optional<SSLSession> sslSession()

int statusCode()

URI uri()

Version version()
Bir Type için body() yönteminin döndürdüğü method, HttpClient yönteminin (...) iletilen BodyHandler <T> parametresinden kaynaklanan HttpResponse <T> parametrelerini belirler:

Kod:
public abstract class java.net.http.HttpClient
Kod:
static HttpClient newHttpClient()

HttpResponse<T> send(HttpRequest req, HttpResponse.BodyHandler<T> responseBodyHandler)
BodyHandler burada method ile functional interface'dir.

Kod:
BodySubscriber<T> apply​(HttpResponse.ResponseInfo responseInfo)
HttpResponse.BodyHandlers sınıfında önceden tanımlanmış bazı uygulamalar var:

Kod:
public static class java.net.http.HttpResponse.BodyHandlers
Kod:
static HBodyHandler<byte[]> ofByteArray()

staticBodyHandler<Path> ofFile​(Path file)

static HttpRespoBodyHandler<Stream<String>> ofLines()

static HBodyHandler<String> ofString()
Geriye kalan methodlar : Javadoc

O kadar yazmışız bir indirme linki verelim;
TIKLA
TIKLA 2


Tabii daha bir çok yeniliği olmasına rağmen şu anlık anlatmak istediklerim bunlardır.
Herhangi bir sürç-ü lisan ettiysek affola .
    


___________________________________________

En çok ne zoruma gidiyor biliyor musun? "Ülkem" diye kaydetmiştin beni telefonuna. Kalbimi parçalara ayırdın, hani vatan bölünmezdi?

Yokluğun bilinç altımdayken , varlığın kimin altında merak ediyorum.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #2
  • Üsteğmen
  • Üye Bilgileri
Üyelik tarihi
01/2018
Nereden
Loading...
Mesajlar
Konular


  


Ellerine Sağlık
    


___________________________________________

küstahlığa tahammülüm karıncanın pipisi kadar.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #3
  • Binbaşı
  • Üye Bilgileri
Üyelik tarihi
12/2017
Nereden
-
Mesajlar
Konular


  


Ellerine sağlık.
    


___________________________________________

Ve sonra biri çıkar gelir, bütün gidenleri unutursun.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #4
  • AR-GE Tim (Bug.Res.)
  • Üye Bilgileri
Üyelik tarihi
08/2015
Nereden
Phobos/Space
Mesajlar
Konular


  


Guzel konu. Eline saglik.
    


___________________________________________

~Cahile gelmez benden hayır

Konu easyly tarafından ( 2 Hafta önce Saat 15:10 ) değiştirilmiştir..
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #5
  • Asteğmen
  • Üye Bilgileri
Üyelik tarihi
08/2018
Mesajlar
Konular
1


  


Java kullanan net yıkıktır, direkt machine code yazamayan kendine yazılımcı demesin.
    
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #6
  • Albay
  • Üye Bilgileri
Üyelik tarihi
05/2013
Nereden
İstanbul
Mesajlar
Konular


  


Alıntı:
xnv´isimli üyeden Alıntı Mesajı göster
Java kullanan net yıkıktır, direkt machine code yazamayan kendine yazılımcı demesin.
Affet üstad, biz daha portakalda vitamin değiliz o konularda.
    


___________________________________________

En çok ne zoruma gidiyor biliyor musun? "Ülkem" diye kaydetmiştin beni telefonuna. Kalbimi parçalara ayırdın, hani vatan bölünmezdi?

Yokluğun bilinç altımdayken , varlığın kimin altında merak ediyorum.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #7
  • Asteğmen
  • Üye Bilgileri
Üyelik tarihi
08/2018
Mesajlar
Konular
1


  


Alıntı:
ALcatraz'´isimli üyeden Alıntı Mesajı göster
Affet üstad, biz daha portakalda vitamin değiliz o konularda.
Sorun değil krdşm, black olma yeter.

    
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #8
  • Yarbay
  • Üye Bilgileri
Üyelik tarihi
02/2012
Mesajlar
Konular


  


Eline sağlık dostum. Birkaç şeyi düzelteyim.

import java.util.regex.Pattern;

asPredicate since 1.8

Predicate in gösterilen methodları 1.8 den beri var zaten : https://docs.oracle.com/javase/8/doc...x/Pattern.html

ByteArrayOutputStream since jdk 1.0 & 1.1

https://docs.oracle.com/javase/7/doc...putStream.html

Yanlış hatırlamıyormuşum.

HttpClient gelmesi güzelde oldu saçma sapan abstractionlarla uğraşıyorduk. Gerçi apache commonsta HttpClient vardı zaten ama olsun..

    


___________________________________________

Computer Engineer.

Software Development Specialist.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #9
  • Albay
  • Üye Bilgileri
Üyelik tarihi
05/2013
Nereden
İstanbul
Mesajlar
Konular


  


Alıntı:
ihan3t´isimli üyeden Alıntı Mesajı göster
Eline sağlık dostum. Birkaç şeyi düzelteyim.

import java.util.regex.Pattern;

asPredicate since 1.8

Predicate in gösterilen methodları 1.8 den beri var zaten : https://docs.oracle.com/javase/8/doc...x/Pattern.html

ByteArrayOutputStream since jdk 1.0 & 1.1

https://docs.oracle.com/javase/7/doc...putStream.html

Yanlış hatırlamıyormuşum.

HttpClient gelmesi güzelde oldu saçma sapan abstractionlarla uğraşıyorduk. Gerçi apache commonsta HttpClient vardı zaten ama olsun..


ByteArrayOutputStream'de tanitilan yeni methoddan bahsettim;

"Java 11'de bir*IOExceptionatamayan yeni bir yöntem*writeBytes(byte [])*tanıtıldı."

asPredicate();

"Predicate<String>" olarak kullanabiliyor, yeni olarak.

Senin tecrüben daha fazla dostum java'da. Eğer zaten önceden de bu methodlar var ise direkt kaldırayım.
    


___________________________________________

En çok ne zoruma gidiyor biliyor musun? "Ülkem" diye kaydetmiştin beni telefonuna. Kalbimi parçalara ayırdın, hani vatan bölünmezdi?

Yokluğun bilinç altımdayken , varlığın kimin altında merak ediyorum.
 Offline  
 
Alıntı ile Cevapla
Alt 3 Hafta önce   #10
  • Yarbay
  • Üye Bilgileri
Üyelik tarihi
02/2012
Mesajlar
Konular


  


Alıntı:
ALcatraz'´isimli üyeden Alıntı Mesajı göster
ByteArrayOutputStream'de tanitilan yeni methoddan bahsettim;

"Java 11'de bir*IOExceptionatamayan yeni bir yöntem*writeBytes(byte [])*tanıtıldı."

asPredicate();

"Predicate<String>" olarak kullanabiliyor, yeni olarak.

Senin tecrüben daha fazla dostum java'da. Eğer zaten önceden de bu methodlar var ise direkt kaldırayım.
Yok yahu tecrübeden değil, kullanmıştım daha önce hatırlıyorum hatta şuraya bak : https://docs.oracle.com/javase/8/doc...#asPredicate--

Kod:
public Predicate<String> asPredicate()
Creates a predicate which can be used to match a string.
Böyle bir açıklama var. Exception için olan doğrudur bir şey diyemeyeceğim.

Eline sağlık bilgiler için, şuraya da bari ben bir link bırakayım bir hayrım olsun : https://dzone.com/articles/java-11-api-changes-so-far

Bu da tüm javacılara gelsin : https://www.instagram.com/p/Bng6z1Gn...y=furkanemirce
    


___________________________________________

Computer Engineer.

Software Development Specialist.
 Offline  
 
Alıntı ile Cevapla
Cevapla

Bookmarks

Seçenekler


Bilgilendirme Turkhackteam.net/org
Sitemizde yer alan konular üyelerimiz tarafından paylaşılmaktadır.
Bu konular yasalara uygunluk ve telif hakkı konusunda yönetimimiz tarafından kontrol edilse de, gözden kaçabilen içerikler yer alabilmektedir.
Bu tür konuları turkhackteamiletisim [at] gmail.com mail adresimize bildirebilirsiniz, konular hakkında en kısa sürede gerekli işlemler yapılacaktır.
Please Report Abuse, DMCA, Harassment, Scamming, Warez, Crack, Divx, Mp3 or any Illegal Activity to turkhackteamiletisim [at] gmail.com

Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz.
Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.



         

Powered by vBulletin® Copyright ©2000 - 2018

TSK Mehmetçik Vakfı

Türk Polis Teşkilatını Güçlendirme Vakfı



Google+

wau

Search Engine Friendly URLs by vBSEO 3.6.0 ©2011, Crawlability, Inc.