다양한 함수 equals() package oop0908; public class Test03_String { public static void main(String[] args) { // 문자열 클래스 String str = "HAPPY"; String name = new String("HAPPY"); if(str==name) { System.out.println("같다"); } else { System.out.println("다르다"); }//if end 위와 같이 == 연산자를 통해 str과 name을 비교하면 "다르다"라는 결과가 출력된다. 같은 HAPPY인데 이러한 결과가 나오는 것은 HAPPY라는 값을 비교하는 것이 아닌 주소가 같은 지 비교하기 때문이다. str과 name 모두 HAPPY라는..
생성자 함수(Constructor) 클래스명과 동일한 함수로 new 연산자와 함께 메모리를 할당할 때 사용한다. 클래스로부터 객체를 생성할 때 생성자가 호출되어 객체의 초기화를 담당한다. 객체 초기화는 필드를 초기화하거나 메소드를 호출해서 객체를 사용할 준비를 하는 것이다. 생성자를 실행하지 않고는 클래스로부터 객체를 만들 수 없다. 모든 클래스에는 생성자함수가 반드시 존재하며 하나 이상을 가질 수 있다. 생성자함수 선언을 생략했다면 컴파일러가 { } 안에 기본 생성자함수를 자동으로 추가한다. 하지만 생성자함수를 선언하였다면 기본생성자함수는 자동으로 추가되지 않는다. 우리는 생성자함수를 직접 여러 개 선언할 경우가 많이 있다. 이 경우 기본생성자함수를 선언하짐 않으면 자동으로 추가되지 않기 때문에 기본생..
package 패키지는 클래스가 저장된 위치이다. 패키지는 한 번만 선언을 해야 한다. 클래스를 사용하기 위해서는 클래스가 저장된 위치를 나타내는 패키지를 선언해야 한다. 이를 통해 다른 클래스를 import 하여 사용할 수도 있다. import java.io.*; import java.sql.*; import java.util.Arrays; //해당 클래스를 직접 선언 import java.awt.*; //GUI 관련 클래스 import javax.swing.*; //GUI 관련 클래스 java. 뒤에 위치한 것이 패키지명이다. * 는 해당 패키지의 모든 클래스를 의미한다. * 를 사용하여 모든 클래스를 가져올 수도 있고, * 대신 직접 클래스 명을 사용하여 해당 클래스만 가져올 수도 있다. Acces..
이클립스로 자바 코드를 F11을 눌러서 실행시킬 때, 우린 단 한 번도 main() 함수를 호출한 적이 없다. 이는 자바를 설치할 때 함께 설치된 자바 가상 머신이 main() 함수 안에 있는 코드를 동작시켜주기 때문이다. 자바의 슬로건은 이 문장이다. '한 번 작성하면, 어디서든 작동한다(write one, run anywhere)'. 이 문장이 어떤 뜻이냐하면 리눅스, 매킨토시, 윈도우와 같은 다양한 플랫폼에 개별적인 실행 파일을 따로따로 만들지 않아도 된다는 뜻이다. 원래는 각 플랫폼마다 실행될 수 있도록 플랫폼용 컴파일러를 따로 준비해야 했었던 과거의 프로그램들과는 달리 자바는 자바 자체의 컴파일러를 통해 어떤 플랫폼에서도 프로그램이 실행될 수 있도록 도와주는 것이다. 이것을 가능하게 하는 것이 ..