JAVA 문법 / 클래스

corncheese·2021년 5월 4일
0

JAVA

목록 보기
1/7

클래스 기본

자바는 객체를 만들기 위해서 반드시 클래스르 만들어야 한다.
클래스는 객체를 만들기 위한 일종의 틀이다.

public class Car{

}
  • Car.java 라는 파일을 만든다.
  • 저장하면 이클립스는 컴파일하여 디스크에 Car라는 클래스를 생성한다.
public class CarExam{
	Car c1 = new Car();
    	Car c2 = new Car();
}
  • new 연산자와 생성자를 이용하여 메모리에 객체를 생성한다.
  • 이렇게 메모리에 만들어진 객체를 instance라고 한다.
  • 이렇게 만들어진 객체를 참조하는 변수가 c1, c2이다.

String 클래스

문자열을 표현하는 자바에서 가장 많이 사용하는 클래스

자바 인스턴스 생성 방법.

  1. new 연산자를 사용하지 않고 인스턴스를 만드는 경우
String str1= "hello";
String str2= "hello";
  • "hello" 라는 문자열이 메모리 중에서 상수가 저장되는 영역에 저장된다.
  • String str2 = "Hello"; 문장이 실행될 때에 hello라는 문자열 상수는 이미 만들어져 있으므로 str1이 참조하는 인스턴스를 str2도 참조한다.
  1. new 연산자를 이용해서 인스턴스를 만드는 경우
String str3 = new String("hello");
String str4 = new String("hello");
  • new연산자를 사용하여 인스턴스를 만들면 인스턴스는 무조건 새롭게 만들어진다.
  • String str4 = new String("hello"); 문장이 실행될 때도 새롭게 만들게 되므로, str3와 str4는 서로 다른 인스턴스를 참조한다.
if(str1 == str2){
	System.out.println("TRUE");
    // 같은 인스턴스를 참조하므로 결과는 true
}
if(str3 == str4){
	System.out.println("FALSE");
    // 다른 인스턴스를 참조하므로 결과는 false
}
  • 참조변수끼리 == 연산자를 사용하여 비교해보기!
  • String은 다른 클래스와 다르게 new를 사용하지 않고 사용할 수 있다. 메모리를 아끼려면 String은 new를 사용하지 않는 것이 좋다.
  • String은 불변 클래스이다. 불변이란 String이 인스턴스가 될때 가지고 있던 값을 나중에 수정할 수 없다.

0개의 댓글