-
[JAVA]JAVA 함수, 클래스, 인스턴스Languages/Java 2021. 2. 18. 15:34반응형
함수란?
하나의 기능을 수행하는 일련의 코드
중복되는 기능은 함수로 구현하여
함수를 호출하여 사용한다.함수를 왜 쓰나요?
1. 각 각의 기능이 구별되어 기능해야하기 때문에
2. 오류 시 발견이 쉽다아래 코드와 같이 addnum이라는 함수를 선언하여 리턴,
위 함수에 사용함 이 때, 매게 변수의 이름이 달라도 상관이 없다.
package classpart; public class FunctionTest { public static void main(String[] args) { int num1 = 10; int num2 = 30; int sum = addNum(num1, num2); System.out.println(sum); } //함수 선언 반환타입, 함수이름, 매게변수 함수를 정의한다 public static int addNum(int n1,int n2) { //매게 변수 이름은 상관이 없다! int result = n1 + n2; return result; } }
클래스와 인스턴스
기존의 만들었던 객체를 통해서
그 객체들을 클래스로 표현
만들어진 코드를 통해서 인스턴스(생성)화 한다.클래스 생성하기
클래스를 사용하기 위해서는 클래스를 생성해야한다
new예약어를 이용하여 클래스 생성
클래스형 변수 이름 = new생성자;ex)가로와 세로의 값을 구해서 지름의 값을 구하려고 할 떄,
먼저 point함수의 가로(x)와 세로(y)값을 선언하고
circle함수에 클래스를 생성 하여 사용
꼭 이렇게 할 필요는 없지만 구별의 기능과 오류를 최소화 하기 위함
package Reference; public class Point { int x; int y; }
package Reference; public class Circle { Point point; int radius; public Circle() { point = new Point(); } }
메모리
함수의 스택 메모리는?
함수가 호출되면 지역변수가 쌓인다
함수가 끝나면 스틱이 없어진다
인스턴스의 힙 메모리는?
뉴라는 키워드로 인해 생성
자동으로 없어지지 않고 없애줘야한다
c++에서는 직접없애줬어햐한다
가비지 콜렉터로 없애준다반응형'Languages > Java' 카테고리의 다른 글
[JAVA]JAVA THIS (0) 2021.02.18 [JAVA]JAVA 생성자,참조자료형,정보은닉 (0) 2021.02.18 [JAVA]JAVA 클래스와 객체 (0) 2021.02.17 [JAVA] JAVA제어문(break,continue,구구단 예제) (0) 2021.02.17 [JAVA]JAVA제어문(반복문) (0) 2021.02.17