참조형?
참조형(Reference)은 자바의 기본형을 제외한 자료형으로,
배열(Array), 열거(Enum), 클래스(Class), 인터페이스(Interface)가 있다.
● 배열(Array)
배열은 동일한 자료형의 값을 저장할 때 사용한다.
예를 들어 30명의 수학 점수를 입력하고 싶다고 하면 각각의 변수를 다 만들어야 한다.
int score1 = 70;
int score2 = 90;
...
int score30 = 60;
이런 식으로 변수를 여러 번 선언 해 줘야 된다.
이럴 때 배열을 사용하여 보다 간단하게 정리할 수 있다.
배열의 경우 아래처럼 선언할 수 있다.
여기서 ‘n’은 만들고 싶은 배열의 크기를 의미한다.
int[] score = new int[30]; // 30개의 int 배열을 생성함
이러면 30개의 score라는 변수가 생긴다.
이때 각각 변수는 score[0]부터 시작하여 score[29]까지 생성됐다.
만약 값을 넣고 싶다면 선언 시 아래처럼 해주면 된다.
int[] score = {70, 80, …, 90}; // 값을 입력한 개수만큼 생성된다
● 열거(Enum)
열거형은 말 그대로 값을 열거해 놓는 거다.
주로 정적인 데이터 값을 저장해서 사용한다.
enum Rainbow {
RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET,
}
enum의 경우 열거된 상수는 대문자로 작성한다.
enum에 있는 데이터를 사용하고 싶을 때는
Rainbow rainbow = Rainbow.RED; // rainbow라는 변수가 생성되고 Red를 넣음
● 클래스(Class)
클래스는 객체 지향을 하기 위한 설계이다.
클래스를 사용해 코드를 쉽게 관리 및 재사용할 수 있다.
public class Exam{
}
우리가 자바 프로그래밍을 시작할 때 사용하는 것 또한 클래스의 메인 메서드이다.
public class Main { // Main 이라는 Calss
public static void main(String[] args) {
}
보통 자바에서 클래스는 대문자로 시작한다.
클래스로 객체를 생성해서 우리는 독립적으로 사용한다.
이렇게 생성된 객체를 인스턴스(instance)라고 부른다.
public class Main {
public static void main(String[] args) {
Exam exam = new Exam(); // Exam클래스를 exam이라는 이름의 인스턴스를 생성
}
● 인터페이스(Interface)
인터페이스란 추상적인 자료형이다.
인터페이스를 사용하면 클래스 간의 다중 상속이 안되는 점을 보완해 주면서 통일성을 늘려 줄 수 있고 이때 각각의 메서드는 서로 다른 기능을 하게 만들 수도 있다.
public interface Formula{
void Add();
void Sub();
}
public class Solution implements Formula{
public void Add(){
}
}