본문 바로가기
✨ Java/메소드 (Method)

자바(JAVA) - 메소드 (Method) - 3

by 환풍 2023. 7. 6.
728x90

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package zon;
 
public class VariableEx2 {
    
    // 인스턴스 메소드라고 부른다.
    public byte byteValue(byte x, byte y) {
        System.out.println(Byte.MIN_VALUE+"~"+Byte.MAX_VALUE);
        System.out.println("public byte byteValue(byte x, byte y)");
        return (byte)(x+y);
    }
    
    //이것을 오버로드라고 한다. 
    public byte byteValue(byte y) {
        System.out.println("public byte byteValue(byte y)");
        return y;
    }
    
    public float getAvg(int total) {
        return total/4.F;
    }
    
    //윤달 공식
    public boolean booleanData(int year) {
        return year%4==0 && year%100!=0 || year%400==0;
    }
    
    public static void main(String[] args) {
        
        VariableEx2 v = new VariableEx2();
        byte rs = v.byteValue((byte)10,(byte)20);
        System.out.println("rs = " +rs);
        
        System.out.println(v.getAvg(346));
    }
}
 
cs

이렇게 VariableEx2 클래스를 생성하고, main메소드에서 해당 클래스 객체를 생성후 메소드를 호출하여 print로 찍어보았다.

byteValue 메소드는 두개지만, 하나는 오버로딩된 메소드로 매개변수가 같지 않기 때문에, 매개변수로 x, y가 있는 메소드가 호출된다.

* 오버로딩 : 같은 이름의 생성자 또는 메소드를 여러 개 선언하는 것을 말한다.

콘솔창에 조회되는 값

v.getAvg(346)을 출력해보면 86.5가 나온다. 

return 값으로 total/4 를 하게되면 86.0이 되는데, 4.F는 형변환을 통해 int의 크기가 float보다 작으므로 float의 형태로 값을 조회할 수 있다. 

반응형

'✨ Java > 메소드 (Method)' 카테고리의 다른 글

자바(JAVA) - 메소드 (Method) - 2  (0) 2023.02.07
자바(JAVA) - 메소드 (Method) - 1  (0) 2023.02.07

댓글