자바 day1 - 클래스와 객체1

marongrong·2023년 5월 13일
0
  • 객체 지향 프로그래밍 OOP
    : 객체를 정의하고 객체 간 협력을 프로그래밍하는 것.
    어떤 행동을 나타내는 단어도 객체가 될 수 있음.
    클래스를 기반으로 프로그래밍함. (객체를 클래스로 구현)
    객체가 가지는 속성을 클래스 내부에 변수로 선언함 (멤버변수)
  • 클래스
    : public class Student {
    int studentID;
    String studentName;
    int grade;
    String address;
    }
    클래스명은 대문자로 시작.
  • 멤버 변수 : 클래스의 속성을 클래스 내에 선언. 기본 자료형 (int, long, float, double) 또는 클래스형(참조 자료형- String, Date, Student 등)으로 선언.
  • 메소드 (멤버 함수) : 클래스 내부에서 멤버 변수를 사용하여 클래스 기능을 구현한 것.
    ex) 학생의 정보를 출력하는 메소드 선언
    public class Student {
    int studentID;
    String studentName;
    int grade;
    String address;

    public void showStudentInfo(){
    System.out.println(studentName + "," + address);
    }
    }

  • 패키지 : 클래스 파일의 묶음. 같은 이름의 클래스라도 다른 패키지에 속해 있으면 서로 다른 클래스임.

  • 함수
    int(반환값의 자료형) add (int num1, int num2) {
    int result;
    result = num1 + num2;
    return result;
    }

    • 매개변수 : 입력으로 받는 변수 (num1, num2)
    • 반환값 : 두 수를 더한 결과 값을 result 변수에 저장하여 반환함
      즉 함수를 수행한 후 결과로 되돌려주는 값.
      함수를 호출했을 때 반환되는 값.

    매개변수가 필요없는 함수도 있음.
    반환값이 없는 함수도 있음. 이땐 void로 채워줌
    return은 함수 수행을 끝내고 호출한 곳으로 다시 되돌아갈 때도 사용 가능. (함수 수행 종료)

  • 함수 호출하기 : 함수 호출시 넘겨주는 변수이름과 함수를 구현할 때 사용한 매개변수의 이름은 달라도 상관 없음.

Q1. 사칙 연산 함수 완성하기
public class FunctionTest {

public static void main(String[] args) {
	int num1 = 10;
    int num2 = 20;
    
    int sum = addNum(num1, num2);
    System.out.println(num1 + " + " num2 + " = " + sum);
    
public static int addNum(int n1, int n2) {
int result = n1 + n2;
return result;
}
}

함수 호출과 스택메모리부터 To be Continued....

profile
what moves you makes you

0개의 댓글