では、その先のプログラムを見てみましょう。このプログラムでは、クラスの定義では下のリストに掲載したような形になっています。
mainメソッドでは、Test4クラスを新しく生成し、そしてTest4メソッドでは、Test4というクラスの定義を行なっている、という形になっています。「…クラスの定義??」と疑問に思う人もいるでしょうが、とりあえず今は深く追求しない! この構造を頭に入れて、続きを読んでいってくださいね。
では、最初のクラスの定義部分に進みます。これは、こんなふうになっています。
public class Test4 extends Frame {
なんか変なものがついてますね。「
extends Frame」というのが、クラス名の後についています。これはなんなのでしょう?
これは、「このクラスは
Frameというクラスを継承しますよ」という意味なのです。何度もいうように、Javaではさまざまなクラスが用意されています。そして、クラスごとに、必要なメソッドをまとめてあるわけです。
では「このクラスはとっても気に入った。だから、新しく作るクラスは、このクラスの全機能をそのまま引き継ぎたい」と思ったとしましょう。こんなときに使うのが「
extends」なのです。このextendsでクラスを定義すると、新たに作成されるクラスは、指定されたクラスを
継承するのです。
「
継承」というのは、あるクラスにあるさまざまな機能を受け継いで新しいクラスを作ることをいいます。あるクラスを継承して新しいクラスを作ると、継承されたクラスの全機能が使えるようになるのです。
ここで継承している「
Frame」というのは、
awtに用意されている、ウィンドウのクラスです。つまり、Frameというウィンドウのクラスを全部継承してTest4を作れば、Test4は何もプログラムなんかしなくてもウィンドウに関する全機能が最初から用意されてしまうわけです。