�ڎ�
���w���̂悤�Ȋ��������Œ�`���邱�Ƃ��ł���BC++�Ŋ��ƌĂ��̂� Java �ł̓��\�b�h�Ƃ����B�O�ȏ���������A�܂Ƃ܂����d�������s���ĂO�܂��P�́i���l�Ƃ͌���Ȃ��j�l��Ԃ��B���\�b�h�̈�ʓI�Ȍ`���͎��̒ʂ�B
�i�C���q�j�@�߂�l�̌^�@���\�b�h��(�����̕���)�@{ ���\�b�h�̒�`�v���O���� }
�u�C���q�v�� public, static �Ȃǂ̑����������B �u�߂�l�̌^�v�́Areturn �ɑ����Ēl���u�����ꍇ�͂��̒l�̌^�������A���ꂪ�Ȃ��ꍇ�� void �Ə����B�����́A�f�[�^�^�ƕϐ������X�y�[�X�ŋ�����y�A�Ƃ��A�����y�A����ꍇ�̓J���}�ŋ��B�f�[�^�^�͕ϐ����ƂɎw�肵��������Ȃ��B���\�b�h�̒�`�v���O�����́A�P�ȏ�̖��ߕ��A���邢�͐錾���A���Z�~�R�����i�Ɖ��s�j�ŋ���ĕ��ׂ�B�����̖��ߕ��� { } �ł܂Ƃ߂��R�[�h�u���b�N�̏ꍇ�́A } �̌�̃Z�~�R�����͕s�v�B
public static ���������� main() ���\�b�h�̓R���p�C����ŏ��Ɏ��s����郁�\�b�h�A�Ƃ������ʂȈӖ������B
���\�b�h�����s�����邽�߂ɂ́A
���\�b�h��(�����̕���);
�Ƃ������ߕ������s����Ηǂ��B���̂Ƃ��A�����̕��т̓��\�b�h�̒�`�Ŏw�肳�ꂽ�����̕��тƌ��A�^����v�������̂ŁA�i�^�͎w�肹���j���̒l�����������B�Q�ȏ゠�鎞�̓J���}�ŋ��B�����ŏ����ꂽ�����́A���\�b�h�̒�`�ŏ����ꂽ�����Ƌ�ʂ��邽�߂��������ƌĂ�A���\�b�h�̒�`�ŏ����ꂽ�������������ƌĂ��B�������͕ϐ����łȂ�������Ȃ����A�������͕ϐ����ł��萔�ł��A�͂��܂����\�b�h���s���ł����Ă��A�������ɑΉ�����^�̒l���m�肷����̂ł���A�Ȃ�ł��\��Ȃ��B���������������̌^�ƍ���Ȃ��ꍇ�A���������ꍇ�����邪�A���킹�Ă������ق����ԈႢ���Ȃ��B
�z��f�[�^���������Ƃ���ꍇ�͔z�����������B������f�[�^�͂P������v�f�Ƃ���z��Ƃ݂Ȃ����̂ŁA�����z�����������B�z��̒����́A�z�ɑ����āu.length�v�Ə������ƂŎQ�Ƃł���̂ŁA�����Ƃ���K�v�͂Ȃ��B
���\�b�h�̒��Ŏg�p�����ϐ��̂����A���\�b�h���Ő錾���ꂽ�ϐ��́A���̃��\�b�h�̒������ŗL���ŁA���\�b�h���I������Ɩ���`��ԂɂȂ�B�錾�Ȃ��ɕϐ����g�p����ꍇ�́A���̃��\�b�h���܂ރN���X�̕ϐ����Ƃ��Ē�`����Ă��Ȃ�������Ȃ��iC++ �̃O���[�o���ϐ��ɑΉ�����j�B
�������\�b�h���ň����̕��сi�����j���Ⴄ���\�b�h���N���X���Œ�`���邱�Ƃ��ł���B���̒�`�̎d�����I�[�o�[���[�h�ƌĂ��B�Ⴄ�^�̃f�[�^�ɓK�p������A�ꕔ�̈�����萔�������肷�邪��Ɠ��e�͓����i�悤�Ȃ��́j�Ƃ����ꍇ�Ɏg�p����A�v���O�����̉ǐ��̂��߂ɗL���Ȏ�@�ł���B
�������� int... a �Ə����A�������� int �^���� n ���ׂ�ƁAa[0], a[1], ... a[n-1] ���������Ƃ��ă��\�b�h�ɓn���ꂽ���ƂɂȂ�B���̏ꍇ�An �̓��\�b�h���Ăяo�����тɕς���Ă��ǂ��B������ϕϐ��Ƃ����B�ϕϐ��́A�ʏ�̈����Ƌ����ł��邪�A�K���A�Ō�̈����Ƃ��Ďw�肵�Ȃ�������Ȃ��B
���\�b�h�̒����玩�����g���Ăяo�����Ƃ��ł���B���̂悤�ȎQ�Ƃ̎d���͍ċA�Ăяo���ƌ�����B
public static int factorial(int n) {
if(n <= 0) return 1;
return factorial(n-1) * n;
}
if ���͍ċA�̘A����ł��邽�߂ɕK�v�ŁA���ꂪ�Ȃ��Ɩ\������B�ċA�Ăяo������Ƃ��A���\�b�h�̏����͓r���Ȃ̂ŁA���̍�Ɠ��e���m�ۂ����܂��̌Ăяo���ꂽ���\�b�h�̏������J�n����̂ŁA�ċA�̘A���������Ȃ�Əꍇ�ɂ���Ă̓p���N���Ă��܂����Ƃ����肤��B���܂�傫�ȏ����v���O�����ɍċA�Ăяo���͎g��Ȃ��ق����ǂ��B
Java�̃v���O�����̊�{�P�ʂ̓N���Xclass�ŁA�P�ȏ�̃N���X���W�߂����̂��p�b�P�[�Wpackage �Ƃ��Ă܂Ƃ߂邱�Ƃ��ł���B�P���ȉۑ�ł���A��̃N���X�ő���邪�A�����łȂ��ꍇ�́A�܂Ƃ܂����d���P�ʂɃN���X���`���A�������p�b�P�[�W�ɂ܂Ƃ߁A�L�@�I�Ɍ��т��邱�Ƃʼnۑ�����̃v���O���������Ƃ����v���O���~���O�̃X�^�C���͍�Ƃ̌������̂��߂ɗL���ł���B
�N���X�͂O�ȏ�̃f�[�^�̐錾���ƃ��\�b�h����Ȃ�B�N���X�́A�ϐ����Ɠ����K���ɏ]�������O�i�N���X���j���w�肵�Ď��̂悤�ɒ�`����B�錾���ɂ��ϐ��ɂ͏����l���ݒ肳���B�����I�Ɏw�肵���ꍇ�͂��̒l�A���ꂪ�Ȃ��ꍇ�́A���l�Achar�^�͂O�A�_���ϐ��� false�A����ȊO�� null �ƂȂ�B
class �N���X�� {
�O�ȏ�̐錾��
�O�ȏ�̃��\�b�h
}
���邢��
public class �N���X�� {
...
}
public �͑��̃p�b�P�[�W����Q�Ƃ������ꍇ�ɕt����C���q�ł���B
Java �̃A�v���P�[�V�����v���O�����̃p�b�P�[�W�ɂ́A�i�v���O�������N�����邽�߂Ɂjpublic static void main() �Ƃ������\�b�h���܂ރN���X�����傤�ǂP�����܂܂�Ă��Ȃ�������Ȃ��B
�N���X�͈ꂩ����ꍇ�����邪�A���łɒ�`����Ă��鎗���d��������N���X�̈ꕔ�����������ĐV���ȃN���X�Ƃ���ꍇ�������B
class �N���X���P extends �N���X���Q{
...
}
�̂悤�Ɏn�܂�N���X�̒�`�́A�u�N���X���P�v�Œ�`����Ă��郁�\�b�h�ȊO�́u�N���X���Q�v�Œ�`����Ă��郁�\�b�h�����̂܂�荞�ށA�Ƃ������Ƃ��Ӗ����Ă���B�����̃N���X�œ������O�̃��\�b�h������ꍇ�́u�N���X���P�v�̃��\�b�h���D�悳���B���̂Ƃ��A�u�N���X���Q�v�̃��\�b�h�́u�N���X���P�v�̃��\�b�h���I�[�o�[���C�h���ꂽ�Ƃ����B
�u�N���X���P�v���e�N���X�i�X�[�p�[�N���X�j�A�u�N���X���P�v���q�N���X�i�T�u�N���X�j�ƌ����A�q�N���X�͐e�N���X���p�������Ƃ����BJava�ɂ́A���̖ړI�̂��߂ɔėp�̃N���X��������`����Ă���A�v���O���~���O��Ƃ̌y���ɖ𗧂��Ă���B�i��q�̃C���^�[�t�F�[�X�������j��ȏ�̐e�N���X���p�����邱�Ƃ͂ł��Ȃ��B
�Ⴆ�A���́AJava ����`���Ă��� Canvas �N���X���p�������q�N���X�̗�ł���B�t�B�[���h�͂Ȃ��A�R���X�g���N�^�ƌĂ�� MyCanvas ���\�b�h�ƁApaint ���\�b�h����`����Ă���Bpaint ���\�b�h�͐e�N���X�Œ�`����Ă��郁�\�b�h�ł����邪�A�q�N���X�ŃI�[�o�[���C�h����Ă���B
class MyCanvas extends Canvas {
MyCanvas(Dimension size) {
this.setSize(size);
}
public void paint(Graphics g) {
g.drawRect(10, 10, this.getWidth()-20, this.getHeight()-20);
g.drawString("MyCanvas", 20, 40);
}
}
main() ���\�b�h���܂܂Ȃ��N���X�́A�ϐ��ƃ��\�b�h�̒�`�W�̂悤�Ȃ��̂ŁA���ꎩ�̂Ƃ��Ď��s���邱�Ƃ͂ł��Ȃ��B���̃��\�b�h�����s���邽�߂ɂ́A���̃N���X���̂悤�Ȑ錾�����g���Ď��̂�^����K�v������B
�N���X�� �ϐ��� = new �N���X��(�������X�g);
��́u�N���X���v�͓������̂ł���B��{�f�[�^�^�̕ϐ��Ɠ����悤�ɁA���̕ϐ����u�N���X���v�Ƃ����f�[�^�^�����B���̕ϐ��́u�N���X���v���C���X�^���X�i���j�i���A���́A���g�H�j�ƌĂ��B
�u�N���X���v�Œ�`����Ă��郁�\�b�h�E�ϐ��́A�C���X�^���X���̌�ɑ����āu.�v�{���\�b�h���A���邢�́u.�v�{�ϐ����ŌĂяo�����Ƃɂ�藘�p���邱�Ƃ��ł���B
�u�N���X���v�^�̔z��ϐ����`���邱�Ƃ��ł���B���̏ꍇ�́A�z��ł��邱�Ƃ�錾������A�z��̊e�v�f�i���ꂪ�C���X�^���X�ɂȂ�j�ɑ��� new ���g���Ď��̂�^���Ȃ�������Ȃ��B
�N���X��[] �ϐ��� = new �N���X��[10];
for(i=0; i<10; i++) {
�ϐ���[i] = new �N���X���i�������X�g�j;
}
�������Apublic static void �Ƃ������������� main() ���\�b�h�����N���X�͓��ʂȈӖ�������Bmain �ƌĂ�郁�\�b�h�����N���X�ƁA�A�v���b�g�ƌĂ�� Applet �N���X���p�������N���X�́A�C���X�^���X���쐬���邱�ƂȂ��A����Ǝ��Ŏ��s���邱�Ƃ��o����B
���̃v���O�����́A�A�v���b�g�̗�ŁA��ɒ�`���� MyCanvas �N���X�̃C���X�^���X�����Ď��s���������̂ł���B�������邱�Ƃɂ���āAMyCanvas �N���X�� MyCanvas, paint ���\�b�h�����s����A�u���E�U�ɒ����`�ƕ����\�������悤�ɂȂ�B
public class Test extends Applet {
public void init() {
add(new MyCanvas(this.getSize()));
}
}
class MyCanvas extends Canvas {
MyCanvas(Dimension size) {
this.setSize(size);
}
public void paint(Graphics g) {
g.drawRect(10, 10, this.getWidth()-20, this.getHeight()-20);
g.drawString("MyCanvas", 20, 40);
}
}
���̃v���O�����́A���Œ�`����Ă���N���X�̕ϐ����A�C���X�^���X����炸�ɃN���X���ڎg���ČĂяo���ė��p�����ł���B���̏ꍇ�A�ϐ��͕K�� static �����̎w�肪�K�v�ł���B
class Test {
public static void main(String[] args) {
int n = (int)(Math.random() * 7);
System.out.println("������ " + Days.DOTW[n] + "�j���ł�");
}
}
class Days {
public static String[] DOTW = {"��","��","��","��","��","��","�y"};
}
�N���X�̃C���X�^���X���I�u�W�F�N�g�i���́j�ƌĂ�A�I�u�W�F�N�g�̋@�\��g�ݍ��킹�ăv���O�������ł�������Ƃ��납��AJava ���I�u�W�F�N�g�w�������ƌĂ�Ă���B
��� MyApplet �N���X�ɂ���擪�� public �́A�A�N�Z�X�C���q�ƌĂ�A���̃p�b�P�[�W������A�N�Z�X�\�ł��邱�Ƃ������B�������邱�ƂŁA���s���ɍŏ��Ɏ��s�����N���X�ł��邱�Ƃ��w�肵�Ă���BDays �N���X�� DOTW �t�B�[���h�̐擪�ɂ��� public �A�N�Z�X�C���q�́A�p�b�P�[�W���̑��̃N���X����A�N�Z�X�o���邱�Ƃ��w�肵�Ă���B
�N���X�̃��\�b�h�Ƃ��āA�R���X�g���N�^�ƌĂ��N���X���Ɠ������O�������ʂȃ��\�b�h������B�N���X�̃C���X�^���X�������Ƃ��ɂ��̃��\�b�h���Ăяo����Ď��s�����B����A��������Ƃ��W�߂����́A�ƌ����Ă悢�B�R���X�g���N�^�̓��\�b�h�Ȃ̂ŁA�������X�g���w��ł���B�C���X�^���X�����Ƃ��́A���̈������X�g�ɑΉ�������������w�肵�Ȃ�������Ȃ��B�߂�l��ݒ�ł��Ȃ��̂ŁA���\�b�h���̑O�Ɂu�߂�l�̌^�v�͏����Ȃ��B
�����ݒ肷��ϐ��̉��ϐ��Ƃ��āA�����ϐ������g�p���邱�Ƃ�����B���̏ꍇ�A�ϐ��ɒl��ݒ肷�������̍��ӂƉE�ӂ��������O�ɂȂ��č�������B���̂킩��ɂ���������邽�߂Ɂi���̃N���X�́A�Ƃ����Ӗ��Łjthis �L�[���[�h������B�ϐ����� x �Ƃ����Ƃ��Athis.x = x; �Ə����ƁA���ϐ��� x �̒l�����̃N���X�̕ϐ� x �ɑ������A�Ƃ������߂ɂȂ�B
�������X�g�̈قȂ�A�����̃R���X�g���N�^���`���邱�Ƃ��ł���B������i���\�b�h�̏ꍇ�Ɠ����悤�Ɂj�R���X�g���N�^�̃I�[�o�[���[�h�Ƃ����B
��ɒ�`���� MyCanvas �ł́A�L�����o�X�̑傫�������߂� setSize �Ƃ����A�e�N���X�Œ�`����Ă��郁�\�b�h�����s���āA�����œn���ꂽ�傫����ݒ肵�Ă���B
�ϐ��̐錾���A���邢�̓��\�b�h�̏C���q�Ƃ��� private ���w�肷��ƁA���̕ϐ��A���邢�̓��\�b�h�́A���̃N���X�̓��������ł����Q�Ƃł��Ȃ��Ȃ�B�ϐ��� private �w�肷�邱�ƂŁA���̕ϐ����e������ɕύX�ł��Ȃ��悤�ɂ��邱�Ƃ��ł��A�f�[�^��ی삷�邱�Ƃ��ł���B�i���̃N���X�����ł����Ӗ��̂���j���\�b�h�� private �w�肷�邱�ƂŁA�N���X�̃A�N�Z�X����P�������邱�ƂɂȂ�A�g�����肪���シ�邱�Ƃ����҂ł���B���̂悤�ȍl�����̓J�v�Z�����ƌĂ��B
���\�b�h�̂Ȃ��N���X�́A���R�[�h�Ƃ��Ă�A�V�����f�[�^�^���`���邽�߂Ɏg����B���Ƃ��A���O�A�Z���A�E�ƂȂǂ̌l�f�[�^����̃N���X�ɂ܂Ƃ߁A��̖��O�ŎQ�Ƃł���悤�ȏꍇ�ł���B
class PersonalRecord {
String name, address, tel, occupation;
}
�g���ꍇ�́F
class ... {
PersonalRecord taro = new PersonalRecord();
...
System.out.println(taro.name + " �̓d�b�ԍ��� " + taro.tel);
}
���\�b�h�������Ă��A�R���X�g���N�^�����A�Ƃ����N���X������B�Ⴆ�A����3�����̓_�Ƃ����f�[�^�^���`�����N���X�̗�ł���B
class Point3D {
int x, y, z;
Point3D(int x, int y, int z) {
this.x = x;
this.y = y;
this.z = z;
}
}
�g���ꍇ�́F
class ... {
Point3D origin = new Point3D(0,0,0);
...
}
Java �͋�����Ƃɂ���đ傫�ȃv���O��������邱�Ƃ�z�肵�Ă���A���̍�Ɗ��𐮂��邱�Ƃ��l���ăN���X�ƌp���Ƃ����d�g�݂�������B���̖ړI�ŁA�����̔ėp�N���X���V�X�e���ɂ���Ē���Ă���̂ŁA�����𗘗p���邱�ƂŁA�v���O�����̘g�g�݂��W��������A��Ƃ������I�ɍs����悤�ɍH�v����Ă���B����ɁA�p���ɂ��A���ׂĂ̍�Ƃ��P����n�߂邱�ƂȂ��A�K�v�ȃp�[�c��g�ݍ��킹�邱�Ƃőf�����ڕW��B�����邱�Ƃ��o����悤�ɂȂ��Ă���B
�������A�p���Ƃ����֗��Ȏd�g�݂ɂ͕����̐e�N���X���p�����邱�Ƃ��o���Ȃ��A�Ƃ����傫�Ȑ�����B���̐�����Ȃ������߂̍H�v���C���^�[�t�F�[�X�ł���B�C���^�[�t�F�[�X�̓N���X�̈���ŁA�ϐ��̐錾���ƃ��\�b�h����Ȃ邪�A���̂悤�Ȑ�����B
extends �̑���Ɂj�uimplements + �C���^�[�t�F�[�X���v�Ə����B3�Ԗڂ�4�Ԗڂ̐���A�C���^�[�t�F�[�X�����L����A�������O���g���č�Ƃ�������������ƂɂȂ�B�e�N���X�ƈقȂ�A�C���^�[ �t�F�[�X�͕������Ɏ������邱�Ƃ��o����̂ŁA��ƖړI���ɍ쐬���Ă����ΊǗ����₷���Ȃ�B���̃v���O�����́A�O�ɏo�����N���X�̃t�B�[���h�� �Q�Ƃ������A�C���^�[�t�F�[�X���g���ď������������̂ł���B�ϐ��̑����Ƃ��ĕK�v������ public static ���s�v�ɂȂ��Ă���B
class Test implements Days {
public static void main(String[] args) {
int n = (int)(Math.random() * 7);
System.out.println("������ " + Days.DOTW[n] + "�j���ł�");
}
}
interface Days {
String[] DOTW = {"��","��","��","��","��","��","�y"};
}
�N���X�Ɠ��l�A�l�X�Ȕėp�C���^�[�t�F�[�X���V�X�e���ɂ���ėp�ӂ���Ă���B���́A�{�^���N���b�N�̏����v���O�����Ƃ��� ActionListener �ƌĂ��C���^�[�t�F�[�X���������āAactionPerformed ���\�b�h���I�[�o�[���C�h������ł���B�{�^�����N���b�N����� actionPerformed ���\�b�h�����s����A�{�^�������ʂ���ƁA�ˋ�̗j�������ĕ\������B
public class Test extends Applet implements ActionListener, Days{
JLabel lb = new JLabel("...");
public void init() {
JButton bt = new JButton("�ˋ�̗j��");
bt.addActionListener(this);
add(bt);
add(lb);
}
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand() == "�ˋ�̗j��") {
int n = (int)(Math.random() * 7);
lb.setText("������ " + Days.DOTW[n] + "�j���ł�");
}
}
}
interface Days {
String[] DOTW = {"��","��","��","��","��","��","�y"};
}