/ LECTURE

Java - Return

이 페이지는 다음에 대한 공부 기록입니다

JAVA(자바), Python(파이썬) 기반의

AI 활용 응용 소프트웨어 개발자 양성 과정

2021.11.10. ~ 2022.05.18.

찾으시는 정보가 있으시다면
주제별reference를 이용하시거나
우측 상단에 있는 검색기능을 이용해주세요

14일차 수업

========복습========

class Yesterday {		//클래스 정의: name Yesterday
	String str;			//필드 선언 : 선언만 한 필드, 대입을 하려면 메소드를 이용
	int ii = 1;			//선언과 대입(초기화) 동시에 가능
	str = "hello";		//대입만 하려고 하면 오류
	void test(){		//메소드 정의 : name test
	    //변수 선언, 제어문, 출력문 등
	}			        //필드를 활용하여 데이터를 등록, 수정, 삭제 등등 하는 기능

	void testPram(int i, String s){
        //매개변수를 이용하여 메소드에서 사용하고자하는 시작값을 정의

        //호출할 때 매개 변수의 순서, 자료형, 개수를 작성하여 값을 입력해줘야함

        //호출이 정확하게 이뤄지면 호출과 동시에 시스템에 등록(선언)

        //시스템에 우리가 보이지 않게 실행
        //int i = 호출할 때 입력한 숫자
        //String s = 호출할 때 입력한 글자
	}

클래스

  • (하고자 하는 약속) : 설계도, 정의서, 틀

구조

  • 필드(상태, 스펙 등등)

    • 클래스 내에서 저장하고 사용해야 하는 데이터, 변수
  • 메소드

    • 필드의 데이터를 가지고 변경, 관리하는 기능, 데이터와 무관한 기능도 가능

인스턴스

  • 클래스를 객체화(new)

정의서나 설계를 실제로 구현하는 것이 인스턴스

시스템에서 사용하도록 등록한 것 : 클래스를 인스턴스화 했다

동일한 클래스를 2번 new(인스턴스)를 하면 2개의 인스턴스가 생성됨

이 2개의 인스턴스는 서로 다른 구현체(객체)

Yesterday y = new Yesterday();
  • 클래스 내에 있는 필드를 호출

    • 클래스를 인스턴스화 한 변수명. 필드명

      • y.str
    • 클래스에서 정의된 필드에 값을 대입(초기화)

      • y.str = “hi”;
    • 클래스 내에 있는 메소드를 호출

      • 클래스를 인스턴스화 한 변수명. 메소드명

      • y.test();

메소드

괄호안에 값이 있다 : 매개변수가 정의된 것임

매개변수가 정의가 되어있다 : 인자(아규먼트)를 작성해야한다

인자는 매개변수의 순서, 자료형, 개수 일치해야함

y.testPram(0, null);

argument : 인자(전달인자), 메소드의 입력값

parameter : 매개변수, 메소드에서 사용할 변수명

======== 끝 ========

14일차 수업

메소드

클래스 내에 있는 필드의 데이터나 별도의 데이터를 수정하는 기능

그러기 때문에 클래스 내에 존재해야함

메소드 내 메소드는 불가능

() : 파라미터 값이 선언되는 공간

  • 그 공간에는 해당 메소드를 호출할 때 사용할 변수를 미리 받을 수 있도록 정의하는 공간

외부입력 받은 값을 우리는 내부에서 작업을 해야함

  • 외부입력 : 메소드 호출할 때 작성하는 인자

  • 내부 : 호출된 메소드 안

메소드 호출 : 클래스명.메소드

  • 같은 클래스 내의 메소드는 클래스명을 생략 가능

내부에서 작업을 한 결과를 다시 외부 전달해줘야 우리가 원하는 흐름이 완성됨

외부 호출 > 내부처리 > 외부 결과 전달

외부 호출 > 내부처리 > 내부에서 처리한 결과를 다른 메소드에서 호출

다른 메소드에 필요한 값을 내부에서부터 받아야 함

return

메소드에서 결과를 우리가 원하는 공간에 데려올 수 있다!

void

  • 반환값이 없다 » 호출이 완료되고 나서 나는 너에게 줄게 없다

  • return을 할 때 return 값에 대한 자료형 선언을 담당 : void

return이 있다 > void를 쓸 수 없다, 반환값이 있다, 반환값에 대한 자료형이 있다

  • int String 등을 사용해서 리턴값에 대한 자료형을 void 대신에 선언,

예시

public static int calc(int a, int  b){
    int result = a + b;
    result result;
}
  • 메소드 호출이 되고 해당 줄까지 진행이 되고 난 후에

  • return 이라는 반환 키워드를 이용해서 호출을 한 메소드로 다음 값을 전달

  • return을 만나면 바로 반환을 시작 : 반환 대상은 result 라는 변수에 담긴 값

  • break처럼 return을 만나면 메소드가 바로 종료

  • return; => 반환하는 값이 없다 > void 허용