ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π² ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π»Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π½ΠΈΡ 15.1,ΡΠ»Π°ΠΆΠΎΠΊ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠΎΡΡΠ½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π½Π°Π΄ΠΏΠΈΡΡΡ: Show position of mismatch (ΠΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΌΠ΅ΡΡΠΎ Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ). ΠΡΠ»ΠΈ ΡΡΠΎΡ ΡΠ»Π°ΠΆΠΎΠΊ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΌΠ΅ΡΡΠΎ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠ°ΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²./ΠΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π½ΠΈΡ 15-1.Π£ΡΠΈΠ»ΠΈΡΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Swing.Π ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΠ»Π°ΠΆΠΎΠΊ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΏΠΎΠΊΠ°Π·Π°ΠΌΠ΅ΡΡΠ° ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΡΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ JDK 7ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°./import java.awt.;import java.awt.event.;import javax.swing.;import java.io.;class SwingFC implements ActionListener {JTextField jtfFirst; // ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°JTextField jtfSecond; // ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°JButton jbtnComp; // ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²JLabel jlabFirst, jlabSecond; // ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡJLabel jlabResult; // Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°Ρ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ JCheckBox jcbLoc; // ΡΠ»Π°ΠΆΠΎΠΊ Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° ΠΌΠ΅ΡΡΠ° ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡΡΠ°ΠΉΠ»ΠΎΠ²SwingFC () {// ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ JFrameJFrame jfrm = new JFrame("Compare Files");// ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayoutj frm.setLayout(new FlowLayout());// Π·Π°Π΄Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π°jfrm.setSize(200, 190);// Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π°j frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ»Ρ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΠΈΠΌΠ΅Π½ ΡΠ°ΠΉΠ»ΠΎΠ²jtfFirst = new JTextField(14);jtfSecond = new JTextField(14);// ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°jtfFirst.setActionCommand("fileA");jtfSecond.setActionCommand("fileB");// ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ CompareJButton jbtnComp = new JButton("Compare");// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ ComparejbtnComp.addActionListener(this) ;// ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ΅ΡΠΊΠΈjlabFirst = new JLabel("First file: ");jlabSecond = new JLabel("Second file: ");jlabResult = new JLabel("");// ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ»Π°ΠΆΠΎΠΊjcbLoc = new JCheckBox("Show position of mismatch");// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎjfrm.add(jlabFirst);jfrm.add(jtfFirst) ;jfrm.add(jlabSecond) ;jfrm.add(jtfSecond);
j f rm.add(j cbLoc);ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΡΠ²Π΅ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ Π΄Π»Ρ ΡΠ°ΠΌΠΎΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ 599.jfrm.add(jbtnComp);jfrm.add(jlabResult);// ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π°j frm.setVisible(true);}// ΡΡΠ°Π²Π½ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Comparepublic void actionPerformed(ActionEvent ae) {int i=0, j=0;// ΡΠ½Π°ΡΠ°Π»Π° ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²Π²Π΅Π΄Π΅Π½Ρ ΠΈΠΌΠ΅Π½Π° ΠΎΠ±ΠΎΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²if(jtfFirst.getText().equals("")) {jlabResult.setText("First file name missing.");return;.}if(jtfSecond.getText().equals("")) {jlabResult.setText("Second file name missing.");return;// ΡΡΠ°Π²Π½ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ try Ρ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈtry (FilelnputStream fl = new FilelnputStream(jtfFirst.getText());FilelnputStream f2 = new FilelnputStream(jtfSecond.getText()))// ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°do {i = f1.read();j = f2.read();if(i != j) break;} whiled != -1 && j != -1) ;if(i != j) (if(jcbLoc.isSelected())jlabResult.setText("Files differ at location " + count);elsejlabResult.setText("Files are not the same.");}elsejlabResult.setText("Files compare equal.");} catch(IOException exc) {jlabResult.setText("File Error");}}public static void main(String args[]) {// ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉSwingUtilities.invokeLater(new Runnable() {public void run() {new SwingFC();}});}}
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ List Demo ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° Π΄ΠΎΠΏΡΡΠΊΠ°Π»Π° Π²ΡΠ±ΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°.// ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ Π²ΡΠ±ΠΎΡΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°// Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Jlist.// ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ JDK 7// ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°.import javax.swing.;import javax.swing.event;import java.awt.;import java.awt.event.*;class ListDemo implements ListSelectionListener {JList jlst;JLabel jlab;JScrollPane jscrlp;// ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠΌΠ΅Π½String names[] = { "Sherry", "Jon", "Rachel","Sasha", "Josselyn", "Randy","Tom", "Mary", "Ken","Andrew", "Matt", "Todd" };ListDemo() {// ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ JFrameJFrame jfrm = new JFrame("JList Demo");// ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ FlowLayoutj frm.setLayout(new FlowLayout());// Π·Π°Π΄Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π°jfrm.setSize(200, 160);// Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π°j frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ JListjlst = new JList(names);// Π£Π΄Π°Π»ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ ΠΊΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ Π²ΡΠ±ΠΎΡΠ°// Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎΡ ΡΠ΅ΠΆΠΈΠΌ// ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° JList ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.// jlst.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ,jscrlp = new JScrollPane(jlst);// Π·Π°Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈjscrlp.setPreferredSize(new Dimension(120, 90));ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΡΠ²Π΅ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ Π΄Π»Ρ ΡΠ°ΠΌΠΎΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ// ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ΅ΡΠΊΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π²ΡΠ±ΠΎΡΠ° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°,jlab = new JLabel("Please choose a name");// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°jlst.addListSelectionListener(this);// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈ ΠΌΠ΅ΡΠΊΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎjfrm.add(jscrip);jfrm.add(jlab);// ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π°j frm.setVisible(true);}// ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°public void valueChanged(ListSelectionEvent le) {// ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π²ΡΠ±ΠΎΡ ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ» ΡΠ΄Π΅Π»Π°Π½// ΠΈΠ»ΠΈ ΠΎΡΠΌΠ΅Π½Π΅Π½ Π² ΡΠΏΠΈΡΠΊΠ΅int indices[] = j1st.getSelectedlndices();// ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠ±ΠΎΡΠ°, Π΅ΡΠ»ΠΈ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ ΠΎΠ΄ΠΈΠ½// ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°if(indices.length != 0) {String who = "";// ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈΠ· Π²ΡΠ±ΡΠ°Π½Π½ΡΡ ΠΈΠΌΠ΅Π½for(int i : indices)who += names[i] + " ";jlab.setText("Current selections: " + who);}else // ΠΈΠ½Π°ΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ±ΠΎΡjlab.setText("Please choose a name");public static void main(String args[]) {// ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΌΠΊΡ ΠΎΠΊΠ½Π° Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉSwingUtilities.invokeLater(new Runnable() {public void run() {new ListDemo();}}) ;}}
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² Π² Java
ΠΠ°ΠΊ ΠΏΠΎΡΡΠ½ΡΠ»ΠΎΡΡ Π² Π³Π»Π°Π²Π΅ 1, Π² Java ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΡΠΈ Π²ΠΈΠ΄Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π². ΠΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π° Π²ΠΈΠ΄Π° ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ //ΠΈ/ /,Π° ΡΡΠ΅ΡΠΈΠΉ ΠΈΡ Π²ΠΈΠ΄ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠΌΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ. Π’Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ /* ΠΈ ΠΎΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ /. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ°ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΡΡΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΎΡΠΌΠ°Ρ HTML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° ΡΠ»ΡΠΆΠΈΡ ΡΡΠΈΠ»ΠΈΡΠ° j avadoc, Π²Ρ ΠΎΠ΄ΡΡΠ°Ρ Π² ΡΠΎΡΡΠ°Π² JDK. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ β ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ°ΠΌ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠΆΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»Π°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠΎΠΉ j avadoc, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Java API.ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ javadoc
Π£ΡΠΈΠ»ΠΈΡΠ° javadoc ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π΅Ρ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ
ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡΠΠΏΠΈΡΠ°Π½ΠΈΠ΅@authorΠΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π°Π²ΡΠΎΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ{0code}ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΡΡΠΈΡΡΠΎΠΌ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΌ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°,Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΡΠΎΡΠΌΠ°Ρ HTML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°@deprecatedΠ£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ ΠΊ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ{0docRoot}Π£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΡΡ ΠΊ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈGexceptionΠΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ{@inheritDoc}ΠΠ°ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΡ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π³ΠΎ ΡΡΠΏΠ΅ΡΠΊΠ»Π°ΡΡΠ°{@link}ΠΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° Π΄ΡΡΠ³ΡΡ ΡΠ΅ΠΌΡ{@linkplain}ΠΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° Π΄ΡΡΠ³ΡΡ ΡΠ΅ΠΌΡ, Π½ΠΎ ΡΡΡΠ»ΠΊΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΡΠΈΡΡΠΎΠΌ, ΡΡΠΎΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΠΊΡΡ{@literal}ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΡΠΎΡΠΌΠ°Ρ HTML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°@paramΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°@returnΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ@seeΠ£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° Π΄ΡΡΠ³ΡΡ ΡΠ΅ΠΌΡ0serialΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ ΠΏΠΎΠ»Π΅, ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡQserialDataΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅, Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ writeObject () ΠΈΠ»ΠΈwriteExternal ()@serialFieldΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ObjectStreamField0sinceΠΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π²Π΅ΡΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ@throwsΠ’ΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ @exception{@value}ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π΅ΡΠΈΠΏΠ° static(AversionΠΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π²Π΅ΡΡΠΈΡ ΠΊΠ»Π°ΡΡΠ°ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ΡΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° @, Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΠΌΠΈ ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡΡΠΎΠΊΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π². Π Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π² ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, Π½Π°Π·ΡΠ²Π°ΡΡΡΡΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² Π² Java 6Q5Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠΌΠΈ ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π² Π΄ΡΡΠ³ΠΈΡ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ°Ρ . Π Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ HTML-Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ. ΠΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ HTML-Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΡΡΠΈΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ HTML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°, ΡΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΈΠ»ΠΈΡΠΎΠΉjavadoc.Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠΎ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ΄Π½ΠΈ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅@see, @since ΠΈ @deprecated, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π΄Π»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π»ΡΠ±ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° Π΄ΡΡΠ³ΠΈΠ΅ β ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π΄Π°Π»Π΅Π΅ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.ΠΠ° Π·Π°ΠΌΠ΅ΡΠΊΡΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈΠΈ ΠΊΡΠ°ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±Π·ΠΎΡΠ° ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°, Π½ΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΈΠ½Π°ΡΠ΅, ΡΠ΅ΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° ΡΡΠΈΠ»ΠΈΡΡ j avadoc.ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡ @author