java method

limchard·2023년 10월 26일
0

java

목록 보기
38/48

기초

접근제한자 (public)+지정예약어(static)+결과리턴형(void or int or String etc...)+메서드명(){};

  • 메서드에 대해 알아보자.
  • 지정예약어에 static의 경우 주고 받는거 없이 바로 출력이 가능하다. static이 없으면 set,get을 통해 주고 받아야 출력 가능하다.
  • 사용법 자체는 어렵지 않다. 그냥 단순히 메서드명을 작성하고, 그에 맞는 결과값이 return된다. 단, 출력순서는 main 기준이다.
  • 그리고 main에서 import하지 않으면 출력되지 않는다.
package Day0628;

/*
* 메서드 작성요령
* 접근제한자 (public)+지정예약어(static)+결과리턴형(void or int or String etc...)+메서드명(){};
* 1. 반복적인 코드를 줄여서 코드의 관리가 용이하게 한다.
* 2. 하나의 메서드는 한가지 기능만을 수행하도록 작성하는게 좋다.
*            */

// 오버로딩 : 메서드명이 전체가 같은거.
public class Method_11 {

    public static boolean aaa(){
        return false;
    }

    public static int bbb(){
        return 33;
    }

    public static int ccc(int x, int y) {
        int z=x+y;
        return z;
    }

    public static void main(String[] args) {

        boolean a=aaa();
        System.out.println("a="+a);

        int b=bbb();
        System.out.println("b="+b);

        int c=ccc(10,20);
        System.out.println("c="+c);
    }
}

결과

a=false
b=33
c=30

Overloading

  • 오버로딩이란 메서드명이 똑같은 것을 의미한다. 1개라도 같은게 있으면 오버로딩이다.
  • 메서드명이 같아도 괄호안의 인자값에 차이가 있으면 적용 가능하다.
  • 메서드명과 괄호안의 인자값 까지도 아예 같으면 오류가 난다.
package Day0628;

public class ExOverloding_12 {

    public static int sum(int a,int b){
        System.out.println("1번째 함수 호출");
        return a+b;
    }

    public static double sum(int a,double b){
        System.out.println("2번째 함수 호출");
        return a+b;
    }

    public static double sum(double a,int b){
        System.out.println("3번째 함수 호출");
        return a+b;
    }

    public static double sum(double a,double b){
        System.out.println("4번째 함수 호출");
        return a+b;
    }

    public static void main(String[] args) {

        // 인자타입에 따라서 자동으로 중복함수가 호출된다.
        System.out.println(sum(5,5));
        System.out.println(sum(5,5.5));
        System.out.println(sum(5.5,5));
        System.out.println(sum(5.5,5.5));
    }
}

결과

1번째 함수 호출
10
2번째 함수 호출
10.5
3번째 함수 호출
10.5
4번째 함수 호출
11.0

main을 통해 보는 출력 순서

  • 메서드의 위치와 상관없이 무조건 main 메서드에 나온 순서대로 출력된다.
  • main에서 불러오지 않으면 출력되지 않는다.
package Day0628;

public class MethodObject_13 {

    public static void hello(int age,double height) {
        System.out.println("안녕 클레오파트라 세상에서 제일가는 포테이토 칩!!!!!!!!!");
        System.out.println("제 나이는"+age+"세 입니다.");
        System.out.println("저의 키는 "+height+"cm 입니다.");
    }

    public static void main(String[] args) {

        System.out.println("메서드 연습 시작!!!");

        hello(29,193.2); // 출력은 main 순서로 출력된다.
        goodbye();
        System.out.println("메서드 연습 끝~~~");
        hello(22,186.4);
    }

    public static void goodbye(){
        System.out.println("빠이 짜이찌엔~~");
    }

}

결과

메서드 연습 시작!!!
안녕 클레오파트라 세상에서 제일가는 포테이토 칩!!!!!!!!!
제 나이는29세 입니다.
저의 키는 193.2cm 입니다.
빠이 짜이찌엔~~
메서드 연습 끝~~~
안녕 클레오파트라 세상에서 제일가는 포테이토 칩!!!!!!!!!
제 나이는22세 입니다.
저의 키는 186.4cm 입니다.
profile
java를 잡아...... 하... 이게 맞나...

0개의 댓글