rt.jarの中抜粋 - 萌えJava超入門
Javaクラスライブラリ

rt.jarの中抜粋

Javaクラスライブラリの中をちょっと覗いてみましょう。

rt.jar

rt.jarの中抜粋


Javaクラスライブラリに掲載されているクラスは、パッケージで管理されています。
「rt.jar」の中に、どのようなパッケージやクラスがあるのか、大雑把に見てみましょう。
import するときのヒントになります。

ご参照↓ こちらのようにコンパイルした場合の binディレクトリにそっくりですね。
Java超入門
 第十四章 クラスとパッケージ
  ソースファイルとクラスファイルを分ける
   2.サンプルプログラムのコンパイル


萌えJava超入門
これは私個人の独断と偏見で選出した
わりとよく使うクラスたちだ。
java.lang は、きりがないので
詳細までは掲載していない。
Javaクラスライブラリのごく一部
rt.jar ←Javaクラスライブラリ本体
    │
    ├--java
    │    │
    │    ├--lang    基本的なクラス
    │    │    └--*
    │    ├--awt    ウインドウの表示関連(swing に近縁)
    │    │    ├--Container.class
    │    │    ├--BorderLayout.class
    │    │    ├--FlowLayout.class
    │    │    ├--GridLayout.class
    │    │    ├--Graphics.class
    │    │    ├--Graphics2D.class
    │    │    ├--Color.class
    │    │    ├--Font.class
    │    │    ├--BasicStroke.class
    │    │    ├--Dimension.class
    │    │    ├--Point.class
    │    │    ├--Rectangle.class
    │    │    ├--GraphicsDevice.class
    │    │    ├--GraphicsEnvironment.class
    │    │    ├--Toolkit.class
    │    │    ├--Cursor.class
    │    │    │
    │    │    ├--event    GUI イベント駆動関連
    │    │    │    ├--ActionEvent.class
    │    │    │    ├--ActionListener.class
    │    │    │    ├--KeyEvent.class
    │    │    │    ├--KeyListener.class
    │    │    │    ├--MouseEvent.class
    │    │    │    ├--MouseListener.class
    │    │    │    ├--MouseMotionListener.class
    │    │    │    ├--WindowEvent.class
    │    │    │    └--WindowListener.class
    │    │    │
    │    │    ├--geom
    │    │    │    └--Point2D.class    XY座標
    │    │    │
    │    │    └--image    画像ファイル関連
    │    │         ├--BufferedImage.class
    │    │         ├--ColorModel.class
    │    │         ├--DataBuffer.class
    │    │         ├--DataBufferByte.class
    │    │         ├--DataBufferInt.class
    │    │         ├--DirectColorModel.class
    │    │         ├--Raster.class
    │    │         ├--RenderedImage.class
    │    │         └--WritableRaster.class
    │    │
    │    ├---io    テキストファイル関連
    │    │    ├--BufferedInputStream.class
    │    │    ├--BufferedOutputStream.class
    │    │    ├--BufferedReader.class
    │    │    ├--BufferedWriter.class
    │    │    ├--InputStreamReader.class
    │    │    ├--OutputStreamWriter.class
    │    │    ├--FileInputStream.class
    │    │    ├--FileOutputStream.class
    │    │    ├--FileReader.class
    │    │    ├--FileWriter.class
    │    │    ├--File.class
    │    │    ├--FileFilter.class
    │    │    ├--FilenameFilter.class
    │    │    ├--FileNotFoundException.class
    │    │    ├--Console.class
    │    │    ├--IOException.class
    │    │    └--UnsupportedEncodingException.class
    │    │
    │    ├--net    ネットワーク関連
    │    │    └--URL.class
    │    │
    │    ├--nio
    │    │    ├--IntBuffer.class    画像配列
    │    │    └--file    ファイル操作
    │    │         ├--Files.class
    │    │         ├--Path.class
    │    │         ├--Paths.class
    │    │         └--StandardCopyOption.class
    │    │
    │    ├--text
    │    │    ├--ParseException.class
    │    │    └--SimpleDateFormat.class    時間時刻のテキスト変換
    │    │
    │    └--util
    │         │    コレクション関連
    │         ├--List.class
    │         ├--Map.class
    │         ├--Set.class
    │         ├--ArrayList.class
    │         ├--HashMap.class
    │         ├--HashSet.class
    │         ├--TreeMap.class
    │         ├--TreeSet.class
    │         ├--Enumeration.class
    │         ├--Iterator.class
    │         ├--Arrays.class
    │         ├--Collections.class
    │         ├--Comparator.class
    │         │    時間時刻関連
    │         ├--Calendar.class
    │         ├--Date.class
    │         │
    │         ├--jar    実行可能jarファイル関連
    │         │    ├--JarEntry.class
    │         │    └--JarFile.class
    │         │
    │         ├--regex    正規表現関連
    │         │    ├--Matcher.class
    │         │    └--Pattern.class
    │         │
    │         └--stream
    │              └--Collectors.class
    │
    ├--javax
    │    ├--imageio
    │    │    └--ImageIO.class    画像入出力
    │    │
    │    ├--sound
    │    │    └--sampled    サウンド関連
    │    │         ├--AudioFormat.class
    │    │         ├--AudioInputStream.class
    │    │         ├--AudioSystem.class
    │    │         ├--Clip.class
    │    │         ├--DataLine.class
    │    │         ├--LineEvent.class
    │    │         ├--LineListener.class
    │    │         ├--LineUnavailableException.class
    │    │         ├--SourceDataLine.class
    │    │         └--UnsupportedAudioFileException.class
    │    │
    │    └--swing    ウインドウの表示関連
    │         ├--JFrame.class
    │         ├--JDialog.class
    │         ├--JOptionPane.class
    │         ├--JPanel.class
    │         ├--JScrollPane.class
    │         ├--JLabel.class
    │         ├--ImageIcon.class
    │         ├--JTextField.class
    │         ├--JButton.class
    │         ├--JCheckBox.class
    │         ├--JComboBox.class
    │         ├--JRadioButton.class
    │         ├--JTextArea.class
    │         ├--ButtonGroup.class
    │         ├--JMenu.class
    │         ├--JMenuBar.class
    │         ├--JMenuItem.class
    │         │
    │         ├--border
    │         │    └--LineBorder.class
    │         │
    │         ├--JFileChooser.class
    │         ├--filechooser
    │         │    ├--FileFilter.class
    │         │    └--FileNameExtensionFilter.class
    │         │
    │         ├--JTable.class
    │         └--table
    │              ├--DefaultTableColumnModel.class
    │              ├--DefaultTableModel.class
    │              └--TableColumn.class
    ├--com
    ├--org
    ├--sun
    │
  その他


萌えJava超入門
はっ?!
こんなにあんの!!
萌えJava超入門
萌えJava超入門
ここでは SQLや 印刷、通信関係は省いた。
画像とサウンドにはディープなクラスもあるな。
もちろん独断と偏見によるものだ。


たくさん載せてしまいましたが、これでも Javaクラスライブラリのほんの一部です。
もちろんここに掲載したすべてを覚える必要はありません。
今は「こんな感じ~。」ということが分かれば大丈夫です。

重要なものから順次ご紹介していきたいと思います。
ちなみに、openjdk-8u41-b04-windows-i586-14_jan_2020.zip の rt.jarには、
込み込みで 19314コのclassファイルがありました。


萌えJava超入門
大丈夫じゃないわよ~
萌えJava超入門
萌えJava超入門
いや、ホントに大丈夫だから。


お疲れ様でした。




© 2019 awasekagami