Javaメソッド


メソッド(Method)
数学に似た関数を呼び出して使用します.
値が渡されていない場合に呼び出されるか、値が渡されて呼び出されます.
戻り値/結果値は、あってもなくてもよい.
慣例に従って小文字で記入し、メソッドを呼び出すときにパラメータと同じタイプと数の値を渡す必要があります.
💡 返されるメソッド名(「パラメータ」)
//機能定義
}
public void information() {
	System.out.println(studentNo);
}
予約語
  • static
    オブジェクトを作成せずに
  • を使用して静的領域に割り当てる
  • final
    エンドツーエンドの意味で、継承時に
  • を上書きすることはできません.
  • abstract
  • 未完了、継承して上書きして完了する必要があります
  • synchronized
  • 、同期処理、共有リソースは1つのスレッドにしかアクセスできません
  • static final(final static)
  • もどりがた
  • void
    戻りタイプがないことを示し、戻り値がない場合は
  • を記入する必要があります.
  • 基本資料型
  • を使用します(計算後に返される値がデフォルトの場合)

  • 配列のアドレス値は
  • を返します.
  • クラス(参照型)
    オブジェクトのアドレス値
  • を返します.
    パラメータ
  • ()
  • はパラメータがないことを示します
  • 基本資料型
    基本パラメータの使用時に値をコピーして渡す
    パラメータ値を変更しても元の値は変更されません(深くコピー)
  • アレイ、クラス
    参照モデルをパラメータとして渡すとデータのアドレス値が渡されるため、パラメータを変更すると元のデータ(浅いコピー)
  • が変更される.
  • 可変パラメータ
    パラメータ数を柔軟に設定する方法
    可変パラメータ以外のパラメータがある場合は、最後に可変パラメータを設定します.
    方法:(資料型...変数名)
  • メソッド式
    // 1. 매개변수가 없고 리턴 값이 있을 때
    public int infromation() {
    	return studentNo;
    }
    
    // 2. 매개변수가 없고 리턴 값이 없을 때
    public void information() {
    	System.out.println(studentNo);
    }
    
    // 3. 매개변수가 있고 리턴 값이 있을 때
    public String information(String studentName) {
    	return studentNo + " " + studentName;
    }
    
    // 4. 매개변수가 있고 리턴 값이 없을 때
    public void information(String studentName) {
    	System.out.println(studentNo + " " + studentName);
    }
    メソッドのタイプ
  • インスタンスメソッド
    クラスに属する従来の方法では、オブジェクトのアドレス(参照)をクラスに渡すことで、そのアドレス位置にあるオブジェクトのインスタンス変数値を計算します.
  • 💡 **定義**:アクセス制限者のデータ型メソッド名を返します([データ型パラメータ名,...])
    **呼び出し**:[データ型変数名=]参照.メソッド名([転送値,...])
  • クラスメソッド
    クラスメンバー関数を作成するときに、メソッドがデータ型を返す前に静的キーを使用するメソッド.メソッド呼び出し時にクラス名を使用して呼び出します.
  • 💡 **定義**:アクセス制限者がデータ型を静的に返すメソッド名([データ型パラメータ名,...])
    **呼び出し**:[データ型変数名=]クラス名.メソッド名([転送値,...])
    かふか
    複数の同じ名前のメソッドを定義して使用
    1つの関数は多くのことをするように定義できるため,多形性を実現した.
  • メソッド名は同じ
  • でなければなりません.
    異なるタイプまたは数の
  • パラメータ
  • を定義する必要がある
    // 매개변수의 형식이 달라야 함
    public void func(int num) { ... }
    public void func(char ch) { ... }
    
    // 매개변수의 개수가 달라야 함
    public void func(int num) { ... }
    public void func(int num, int num2) { ... }
  • パラメータ名無関係
  • は、タイプに関係なく
  • を返す.
    オーバーロードの例
    // MethodExam.java
    public class MethodExam {
    	public void func() {
    		System.out.println("1번째 메소드");
    	}
    	public void func(int num) {
    		System.out.println("2번째 메소드");
    	}
    	public void func(char ch) {
    		System.out.println("3번째 메소드");
    	}
    	public void func(int num1, int num2) {
    		System.out.println("4번째 메소드");
    	}
    }
    
    // Run.java
    MethodExam me = new MethodExam();
    me.func();
    me.func(10);
    me.func('A');
    me.func(10, 20);
    this
    すべてのインスタンスメソッドに非表示にし、存在する参照として割り当てられたオブジェクトを指します.
    関数の実行時に渡されるオブジェクトのアドレスを自動的に受信
    public class MethodExam {
    	public String name = "홍길동";
    	
    	public void printName() {
    		String name = "이길동";
    		System.out.println("name : " + name); // name : 이길동
    		// 변수명이 필드명과 같은 경우, this 객체 사용
    		System.out.println("this.name : " + this.name); // this.name : 홍길동
    	}
    }
    getter/setter
  • setterメソッド
    入力した値を検証してフィールドに保存する方法
    メソッド名set+フィールド名(大文字)
  • として指定
    💡 「アクセス制限」「予約項目」void setフィールド名(データ型変数名){
    (this.)フィールド名=変数名;
    }
    public void setStudentNo(int studentNo) {
    	this.studentNo = studentNo;
    }
  • getterメソッド
    フィールドの値を加工して外部読み取り用に戻す方法です.
    メソッド名get+フィールド名(頭文字大)
    フィールドタイプがbooleanの場合is+フィールド名(大文字)
  • として指定
    💡 返されるgetフィールド名(){
    フィールド名を返す
    }
    public int getStudentNo() {
    	return studentNo;
    }
    getter/setterメソッドの例
    public class Member {
    	public String name;
    	public int age;
    
    	public String getName() {
    		return name;
    	}
    	void setName(String name) {
    		this.name = name; // this.name : 필드에 있는 name / name : setName의 변수
    	}
    	public int getAge() {
    		return age;
    	}
    	private void setAge(int age) {
    		this.age = age;
    	}
    }