티스토리 뷰

JadeStone의 깃허브. ( 수업때 작성한 자바 프로그램들 모두 당일에 업로드 되니 참고하세요!)

https://github.com/BigJadeStone/java-class

오늘의 행복  강남역 12번 출구 근처에 있는 오레노라멘 집에서 사먹은 라면(가격:1만원)

<메서드>
참고할 클래스 = MethodEx01, MethodEx02, MethodEx03, Quiz21, Quiz22, JavaPractice01, JavaPractice02
자바 교안 8강_메서드 참고.

-입력 변수는 파라미터나 매개변수라고 말하기도 한다. (입력받는 값이라고 생각하면됨.)
 이건 () 로 둘러쌓여있음.
-타입(리턴타입) 이름 (입력변수) {}  -> 이런 형태임.
-메서드는 메서드 내부에 생성 할 수 없습니다.
메인 메서드 밖에 그리고 클래스 안에 만들어야하는데. 
절차 지향 언어에서는 무조건 위쪽 빈공간에 메서드를 선언해줘야하지만
객체 지향 언어인 자바에서는 위 아래 빈공간 어디에다가도 만들어줘도 상관없다.
-메서드의 호출 -> 이름()
-메서드를 호출한 곳에, 메서드 안에서 내부를 실행하고 리턴 값에서 반환하기로 한 값을 반환해준다.
*메서드의 유형 예는 4가지.
반환유형 x, 매개변수 x
반환유형 o, 매개변수 x
반환유형 o, 매개변수 o
반환유형 x, 매개변수 o


#반환유형 (리턴 타입)
- 메서드가 실행의 결과값을 반환할 때는 return이라는 키워드를 사용합니다.
- return 0; //반환이 있으면 리턴이라는 키워드에 어떤 값을 반환하도록 만든다.
- System.out.println( add(3, 5) ); // 이게 되는건 반환이 있는 메서드만 가능.
 반환유형이 있는 메서드는 호출 구문이 값이 되기 때문에 매서드의 매개값으로 사용될 수 있습니다.
 * ex) println(메서드호출)
*void형 메소드.
-sub(1,2); // void형 메소드는 단순히 이렇게 호출만 가능.
ex) int r = sub(1, 2);  -> 불가능
ex) System.out.println(sub(1,2)); -> 리턴이 없기 때문에 이렇게 사용 불가능.
-return이 사용가능하다. 이유는 ? 리턴의 2가지 의미.
 1.return 값; 메서드로부터 도출된 값을 반환해준다.
 2.이 자리에서 메서드를 종료한다는 종료의 의미. -> void형에서는 여기에 해당.


#매개변수
-소괄호 안에 매개변수를 써넣을 때. (타입 매개변수이름) 이렇게 두가지만 적는것이다.
-매개변수를 여러개 넣을시 구분은 ,(콘마)로 해주면 된다.

<오늘 공부하면서 기억해둘 것.>
-오늘 메서드 만들 때 반환 값앞에 일단 무조건 static붙이기.
static int calSum() {}
-메서드가 길어지면 보기 어려울수 있으니 메서드를 만들어놓고 보지않을 때는
 메서드 이름옆에 -를 눌러서 접어놓기.
-메서드를 만들어놓고 반환값이 아직 정해지지 않았을 때 일단 return 옆에 반환값에다가 아무 의미없는 기본값을 설정한다.
 int 같은 경우 0; 스트링일경우 null; 이 기본값이다.
-메서드 안에서 리턴은 반드시 하나여야한다.
-티스토리에 내 깃허브 링크 꼭 올리기.
-메서드는 나중에 가면 정말 복잡해지기 때문에 현재 눈감고도 메서드를 만들 수 있도록 연습해야한다.
-메서드를 만드는 것만 잘 하면되는 것이 아니라. 만들었다면 사용하는 것까지 능숙해져야 비로소 메소드를 잘 다루게 되는 것이다.
-반환값이 있는 메서드를 작성시. 메서드를 선언해놓고 세부내용을 작성하기 전에 내가 아직 메서드 작성이 서투르다면 return 값을 미리 초기값으로 
 설정해놓고 출력을 해가면서 내용을 작성하면 좋다.

*문제 푸는 연습할 싸이트*
백준, 프로그래머스.
- 백준이랑 프로그래머스를 오가며 시간나는데로 틈틈히 문제 풀기.
  그러면 자연스레 알고리즘 문제에도 익숙해지게 되어있음.

#프로그래머스
-개발직군에 관한 양질의 채용공고들이 많음. (괜찮은 회사들이 많음 ->그리고 코딩테스트를 대부분 봄)
-백준에 메서드를 만드는 문제가 많지 않기 때문에 그럴 땐 프로그래머스로 와서 문제 풀어보기.
-프로그래머스 -> 스쿨 -> 코딩테스트 연습 
현시점에서
0~1레벨 문제는 다 풀수 있어야 한다.
2레벨도 좀 생각을 해봐야 할 수 있지만 다 풀수 있다.
3레벨은 아직 풀 수 없다.

class Solution {
    public int solution(int num1, int num2) {
        int answer = -1;
        return answer;
    }
}

여기 위에 예문에서 내 이클립스에 저 구문을 넣어서 작업할 때는
public 오른쪽에 static 을 써넣고 작업을 하고.
작업이 완성되고나면 static을 지운 내용을 프로그래머스 답안 제출하는 곳에
올려놓고 제출하기.

 

<오늘 소감>

현재 작성하고 있는 자바수업 기록문들은 내가 지난날 공부한것들을 복습하기 위해서 나만 보기 편하게 작성하고 있었다.

그런데 내 글을 보게 되시는 분들도 있다는걸 알게되었다.

지금 굉장히 좋은 선생님 아래서 양질의 수업을 받고있다고 생각하는데. 내가 배운걸 잘 기록해두면 다른 분들이 참고해서 정보를 얻어가시는데 도움이 될 수 있겠다고 생각이들었다. 

앞으로는 써가는 글들이 나뿐 아니라 정보를 찾아 들어오시게되는 분들께도 도움이 될 수 있도록 내용을 좀더 보기좋게 알차게 정리해야겠다. 

 

오늘 배운 메소드는 프로그래밍의 꽃이라는 생각이 들었다. 굉장히 유익하고 중요한 내용이었다.

저번주까지는 잠시 수업 내용을 잘 못 따라갔지만 주말에 각오를 다지고 다시 수업을 들으니 오늘은 다행히 수업을 잘 따라갈 수 있었다. 비록 내가 옆에 있는 다른 분들보다 더딜지라도 분명 따라갈 수 있는 분야니 하나를 배우는데 남들보다 더 많은 시간이 들더라도 더욱 근성을 내어 분발하도록 하자!

그래도 어떤 분야에 내가 전문성을 키워나가고 있다는 생각에 지난날 방황하던 삶 속에서 느끼지 못 했던 안정감과 행복감이 느껴진다. 앞으로도 내가 나아가야 할 방향을 잘 잡고 꾸준히 걸어나가도록하자.

 

우리 학원 위치는 강남역 12번 출구에서 한  5분정도 거리가 되는거 같다.

오늘 학원 근처에 오레노라면이라는 라면집에서 점심을 먹었는데 진짜 맛있었다.

가격은 1만원에 반숙 계란 하나 추가에 1000원 추가. 자주 가서 사먹어야겠다.

댓글