O czym chcesz poczytać na blogach?

Java string

Rafał Podhajny

Jest ta metoda, jaką wskaże typ referencji. Co natomiast stanie się, gdy metoda jest zarówno przeciążona, jak i przesłonięta ?

class A {     void write(){         System.out.println( "oryginał" );     } } class B extends A {     void write(){         System.out.println( "przesłonięta" );     }     void write( String s ){         System.out.println( "przeciążona" );     } } class Main { public static void main( String[] args ) { A a = new A(); B b = new B(); A ab = new B(); a.write(); // (1) oryginał b.write(); // (2) przesłonięta ab.write(); // (3) przesłonięta b.write( "xx" ); // (4) przeciążona a.write( "xx" ); // (5) błąd kompilacji ab.write( "xx" ); // (6).
    Obiekt typu B, więc zostanie wykonana metoda write() z klasy B.
  1. Referencja pokazuje na obiekt typu B, wiec zostanie wykonana metoda write (String s) z klasy B.
  2. Błąd kompilacji. Referencja pokazuje na obiekt typu A, klasa ta nie posiada metody write przyjmującej parametr typu String.
  3. Błąd kompilacji. Referencja typu A nie posiada metody write(String s).

devramming – java, python, sql, etc.

.

MD5 – funkcja skrótu, dzięki której z dowolnego ciągu danych zostaje wygenerowany 32-znakowy skrót. Funkcja ta idealnie nadaje się do wygenerowania hasła, gdyż dzięki niej otrzymujemy 32-znakowego Stringa, a przecież taki ciąg znaków wystarczy, aby utworzyć silne hasło.
Medota md5 może mieć następujący kod:

 static String md5(String message){ MessageDigest md; try { String strMessage = new String(message); md = MessageDigest.getInstance("MD5"); md.reset(); md.update(strMessage.getBytes()); byte messageDigest[] = md.digest(); StringBuffer hexString = new StringBuffer(); for (int i=0;i<messageDigest.length;i++) { String hex = Integer.toHexString(0xFF & messageDigest[i]); if (hex.length() ==.

Reply

Testmbu's Blog

? public IEnumerable TimeLineItems { get; set; } public IEnumerable GetTimeLineItems(int SelectedPID) { TimeLineItems = (from t in db.TimelineItems where t.ProductID == SelectedPID select new […]
sureshcd10 cvvc
  • Pagination with mid range page numbers Kwiecień 11, 2012
    I'm trying to create paging in JavaScript, similar to most paging you see now, where if there's a lot of pages, it will use dots to break up the page display. I.e., (1 2 ... 22 23 24 25 26 27 28 ... 110 111) Here's the code I have so far, however this isn't working. I only displays the current page. Any ideas what I'm missing here? J […]
    dave
  • Error with locales and.
    That's hosted on a Windows server, so I'm trying to redirect with a web.config file. I've tried dozens of variations from examples and I can't make it work. The new urls have changed from this: www.mysite.com/wp/whatever-else to this: www.mysite.com/whatever-else Some examples I've tried includ […]
    robin
  • Bash: how to check and insert a string within a block in a file Kwiecień 10, 2012
    Having a block in http.conf file like: ... Assuming using bash, how can I check if the following line AddHandler application/x-httpd-php .php it's been already added within the previous block, and, if not, how can I add it at its bottom resulting in ... AddHandler application/x-httpd-php.

  • Moriturius's Devlog

    Sam Jython oczywiście potrafił bez problemów wczytać ten plik ale zajmowało to tyle samo czasu ile wcześniej (ok. 5 sekund), zatem startowanie aplikacji nie przyspieszyło.

    Postanowiłem zatem poszukać pomocy gdzie indziej – zmienić język skryptowy. Po krótkim poszukiwaniu stwiedziłem, że chyba najbardziej trafnym językiem skryptowym dla Javy będzie.. JavaScript
    Szybko zabrałem się za pisanie testowych skryptów i kodu uruchamiającego. Kiedy opanowałem samo wykonywanie, przyszedł czas na kompilację i ładowanie. Po kilkudziesięciu minutach z dokumentacją i przykładowymi kawałkami kodu udało mi się stworzyć program kompilujący plij *.js do pliku *.class. Okazało się to być znacznie prostrze niż przypuszczałem gdyż wystarczył taki fragmencik:

     String script = readSource("scripts/base.js"); CompilerEnvirons env = new CompilerEnvirons(); ClassCompiler classCompiler = new ClassCompiler(env); Object[] classes = classCompiler.compileToClassFiles(script, "scripts/base.js", 1, "Base"); 

    I tyle! Funkcja readScript(..) wczytuje oczywiście z pliku kod skryptu. Wówczas tablica obiektów classes.

    devdroid_PL

    Dzięki Apache Commons, które udostępnia pakiet commons-codec-1.4.jar.

    Aby z niego skorzystać wystarczy dodać zewnętrzną bibliotekę do wybranego projektu w Eclipse. Należy kliknąć prawym klawiszem na nazwie projektu i wybrać z menu Build Path > Configure Build Path:

    W okienku, które się pojawi wybieramy Java Build Path > Libraries > Add External JARs i wskazujemy plik commons-codec-1.4.jar pobrany z Apache Commons.

    Można przystąpić do pisania kodu. Stworzymy prostą klasę Base64Utils z dwiema statycznymi metodami do kodowania i dekodowania ciągu bajtów.

     package com.droneapps.base64coder; import org.apache.commons.codec.binary.Base64; public class Base64Utils { private static final Base64 base64Encoder = new Base64(); public static String encodeBytes(byte[] byteArray) { return new String(Base64.encodeBase64(byteArray)); } public static byte[] decodeBytes(String encodedString) { return base64Encoder.decode(encodedString.getBytes()); } } 

    Myślę, że te metody nie wymagają wyjaśnień. To wszystko czego potrzebujemy do obsługi base64. Taka prosta klasa umożliwia kodowanie tablicy bajtów, a połączenie jej.