JavaRush /Java Blog /Random-TK /Java-da toString () usulyny ýok etmek üçin 10 maslahat (1...
Ku6ep
Dereje

Java-da toString () usulyny ýok etmek üçin 10 maslahat (1-nji bölüm)

Toparda çap edildi
Java-da toString () usulyny ýok etmek üçin 10 maslahat - ToStringBuilder Netbeans tutulmagy Java-da toString () usulyny ýok etmek üçin 10 maslahat (1-nji bölüm) - 1

Java toString usuly

toStringObjectJava-daky usul , adam okalýan görnüşde bir obýekt () hakda anyk we ýeterlik maglumat bermek üçin ulanylýar . Dogry usuly ýokaşdyrmak, gymmatly we möhüm maglumatlary bermek bilen Java programmasyny hasaba almaga we düzetmägetoString kömek edip biler . Bir synpda kesgitlenendigi we deslapky ýerine ýetirilmegi kän bir maglumat bermeýändigi sebäpli , bu usuly nesil synpynda ýok etmek elmydama iň gowy tejribe. Aslynda, möhüm ýa-da umumy görnüşi döredýän bolsaňyz , ýa -da hemişe deň bolan , hashCode , deňeşdiriň we Java-da usullary ýok ediň. Düzgüne görä, ýerine ýetiriş görnüşinde çykyş öndürýär , mysal üçin mysal üçin synp usuly test.Country@18e2b22 çap eder, bu ýerde 18e2b22 altyburçlukdaky obýektiň hash kody, eger hashCode usuly diýseňiz, 260943370 yzyna gaýtarylar. onluk ekwiwalenti 18e2b22. Mesele gözlenende bu maglumatlar aýratyn peýdaly däl. Ulgam birikmesinde haýsydyr bir mesele tapmaly boljak hakyky durmuş mysalyna seredeliň, ulgamyňyzyň haýsy öý eýesine we portuna birikmäge synanyşýandygyny bilmek isleýän bolsaňyz we diňe deslapky maglumatlary çap edýän bolsaňyz , şeýle bolar hakyky meseläni göz öňüne getirmek mümkin däl, ýöne ýokaşdyrylan ýerine ýetiriş bilen host ady we port belgisi ýaly peýdaly maglumatlary berip bilerler. Bu Java gollanmasynda kod mysallary bilen usuly ýokaşdyrmak barada käbir maslahatlar bereris .toString()java.lang.ObjectOrderTradeEmployeetoStringtoStringpackage.class@hashCodetoString()toString()CountrySocketServerSockettoStringtoStringtoString

Java-daString usulyny nädip ýok etmeli:

Çig bahanyň ýerine formatlanan senäni (ýagny gün / aý / ýyl) çap edýär. Java usulyny ýok edende bu gaty peýdaly maslahat toString. Adaty toString()synp java.util.Dateformatlanan senäni çykarmaýar we hemişe zerur däl köp maglumatlary öz içine alýar. Bölekleýin “DateFormat ” ulanýan bolsaňyz dd-MM-yy programmaňyzda, hökman bu formaty deslapky görnüşiň ýerine görmek islärsiňiz. IDE adatça formatlanan önüm öndürmeýär Datewe bu özüňiz etmeli bir zat, ýöne oňa mynasyp. Java-da formatirlemek barada jikme-jiklikler üçin Java-da ddMMyy Formatynda senäni nädip çap etmelidigini okaň Date. Munuň üçin SimpleDataFormat synpyny ýa-da Joda Sana wagt kitaphanasyny hem ulanyp bilersiňiz .

ToString formatyny resminamalaşdyrmak

Usulyňyz toString()maglumatlary meýdan = baha hökmünde çykarmasa, çykyş formatyny resminamalaşdyrmak gowy zat toString, esasanam Işgär ýa-da Talyp ýaly möhüm zatlar üçin. Mysal üçin, toString()synp usuly Работник(Employee)" John-101-Sales-9846387321 " çap etse, formaty "name-id-department-contact" diýip kesgitlemek gowy tejribe bolar, ýöne şol bir wagtyň özünde müşderiniň almagyna ýol bermez. usuldan alnan maglumatlar , elmydama we ş.m. ýaly toString()maglumatlary almak üçin degişli usullary üpjün etmelisiňiz , sebäbi obýektiň wekilçiliginden alnan maglumatlar gowşak we ýalňyş bolýar, şonuň üçin müşderi maglumat almak üçin elmydama arassa ýoly bolmaly. getName()getId()getContact()toString()

ToString () çykyşyny düzmek üçin StringBuilder ulanyň

Java-da bir usul üçin kod ýazýan bolsaňyz , aýratyn atributlary goşmak üçin StringBuildertoString() ulanyň . “Eclipse” , “Netbeans” ýa-da “IntelliJ” ýaly IDE ulanýan bolsaňyz, ýazmak üçin + operatoryň ýerine usuly we usuly ulanmak hem ýol. Düzgüne görä, “Eclipse” we “Netbeans” ikisi birleşme operatory bilen döredilýär. StringBuilderappend()toStringtoString

@Override düşündirişini ulanmak

Java-da artykmaç usuly ulanmak @Overridediliň iň oňat tejribelerinden biridir. equals()Thisöne bu yşarat, usullary we usullary ýok etmek meselesinde bolşy ýaly möhüm däl compareTo(), sebäbi artykmaç ýerine derek artykmaç ýüklemek hasaplamak kyn bolan has inçe ýalňyşlyklary döredip biler. Her niçigem bolsa, düşündirişden peýdalanmak has gowudyr @Overrride.

Bir massiwiň mazmunyny çap etmek ýerine

Bir massiw Java-da obýektdir, ýöne bir usuly ýok etmeýär toStringwe bir massiw çap edeniňizde, massiwiň mazmunyny görmek isleýänimiz üçin deslapky çykyş formaty gaty peýdaly däl. Theeri gelende aýtsak, bu par [par] ýaly duýgur maglumatlary saklamak üçin “String” -den has gowy bolmagynyň başga bir sebäbi. Bir massiwiň mazmunyny çap etmegiň müşderileriňize kömek edýändigine ýa-da ýokdugyna göz aýlaň, manysy bar bolsa, massiwiň mazmunyny obýektiň ýerine çap ediň. Öndürijilik sebäplerine görä, beýleki zatlary saklamak üçin şeýle Collectionýa ArrayList-da HashSet-i ulanmak maksadalaýyk .Array

Bonus maslahatlary

Java-da usuly ýokaşdyrmak barada has köp bonus maslahatlary toString.
  1. toStringÇykyşy birnäçe setirde ýa-da uzynlygyna görä çap ediň .

  2. toStringHaýsydyr bir düşünişmezlikden gaça durmak üçin wekilçilikde doly hünärli synp atlaryny goşuň package.class.

  3. Null bahalary taşlap ýa-da görkezip bilersiňiz, ýöne görkezmek has gowudyr. nullKäwagt peýdaly bolýar, sebäbi käbir hadysalarda haýsy meýdanyň bardygyny görkezýär , mysal üçin NullPointerException .

  4. Açar bahaly formaty ulanyň, meselem member.name=member.value, IDE-leriň köpüsi muny goldaýar.

  5. Miras alýanlara zerur maglumatlary bermelidir öýdýän bolsaňyz, miras galan agzalary goşuň.

  6. Käwagt bir obýekt köp sanly islege bagly we zerur parametrleri öz içine alýar, Gurluşyk şablon mysalymyzda görkezişimiz ýaly , ähli meýdanlary çap etmek mümkin däl diýen ýaly, bu ýagdaýda diňe zerur meýdanlary çap edip bileris, esasanam islege görä meýdanlarymyz bar.

Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION