위치 : D:\조정인\4. 프로그래밍 언어활용\source\day02\src\exam01
Student
package exam01;
public class Student {
int id; // 변수정의 : 변수가 아직아니ㅣ
String name;//변수정의
String subject;
void study() {
System.out.println(name +'가' + subject + "를 공부한다.");
}
}
Ex01
package exam01;
public class Ex01 {
public static void main(String[] args) {
Student s1 = new Student();
s1.id = 1000;
}
}
Ex02
package exam01;
public class Ex02 {
public static void main(String[] args) { // 기본 함수 : main 함수 !!
int n1 = 10;
int n2 = 20;
int r = add(10, 20);
System.out.println(r);
}
//
static int add(int n1, int n2) { // 함수 지역 : 함수가 수행될 때만 메모리 할당되고 활성화 돼서 지역변수라고 얘기한다.
int result = n1 + n2;
return result;
}
}
/* 결과
30
*/
/*
함수를 잘 이해해야한다.
재료와 레시피가 있다.
레시피는 함수
요리를 하겠다고 마음 먹을 때 재료를 사온다.
재료는 요리할 때 필요!
요리하지않으면 재료는 썩는다. 요리를 할 때 재료가 필요하다
함수도 재료가 필요하다. 함수 역할은 연산! 연산 할 때 값을 담아야하느데 변수가 필요
연산을 수행하지 않으면 재료는 필요 없다. n1과 n2는 함수 수행할 때 이게 필요하다느 것이다.
함수가 수행될 때 n1과 n2에 값을 담기 위한 공간이 생성된다.
함수가 끝나면 필요없는 자원은 종료된다. 안에 할당된 메모리가 종료된다.
함수도 메모리가 필요하다 함수가 시행될 때만!! 시행될 때 있느 메모리, .. 스택 뭐시기
임시 메모리
10, 20 이 스택이라는 영역 메모리에서 할당 되어야한다.
함수가 시행되면 공간이 할당된다 그 전엔 그냥 코드일 뿐!!
변수는 공간, 이름이 필요하다. 공간이 있어야 변수라고 할 수 있다.
함수 : 기능을 수행(반복 수행), 재활용성에 초점을 두고 있다.
스택 (영역) 메모리(임시 메모리) - 함수가 연산을 수행할 때만 공간을 할당, 작업 완료 (return) -> 연산이 끝나면 제거
스택 구조 : 가장 처음에 투입된 자료를 가장 마지막에 꺼낼 수 있고, 가장 마지막에 투입된 자료를 가장 처음으로 꺼낼 수 있는 구조
*/
Ex03
package exam01;
public class Ex03 {
public static void main(String[] args) {
Student s1 = new Student();
System.out.println(System.identityHashCode(s1)); // 가상의 주소, 객체 주소이다.
}
}
/* 결과
990368553
*/
'Languages > JAVA' 카테고리의 다른 글
생성자 (0) | 2024.04.18 |
---|---|
객체지향 프로그래밍1 (0) | 2024.04.17 |
배열 (0) | 2024.04.16 |
조건식 (0) | 2024.04.16 |
배열 거꾸로 변환하기 (0) | 2024.04.15 |