본문 바로가기
728x90
반응형

전체 글86

Java Constructor(생성자)의 개념, 특징, 및 사용 방법 Constructor(생성자)란? Java 클래스의 특별한 종류의 메서드로, 객체를 초기화하고 생성할 때 호출되는 함수다. 생성자는 클래스의 인스턴스(객체)를 생성할 때 필요한 초기화작업을수행한다. Constructor(생성자)의 특징 메서드명과 클래스명 동일: 생성자의 이름은 생성자를 식별하기 위해 항상 클래스의 이름과 동일하다. 매개변수를 가질 수 있음: 생성자는 필요에 따라 매개변수를 가질 수 있으며, 이러한 매개변수를 통해 객체의 초기 상태를 설정한다. 기본 생성자: 클래스가 어떠한 생성자도 정의하지 않으면 기본 생성자가 자동으로 생성된다. 기본 생성자는 매개변수를 가지지 않으며, 객체를 기본 상태로 초기화한다. 생성자 오버로딩: 클래스는 여러 개의 생성자를 가질 수 있고, 이들은 서로 다른 매개.. 2023. 10. 18.
"Java에서 '=='와 'equals' 메소드 비교의 차이" 교수님이 저번 수업 시간 중 물어보셨다. a == b와 a.equals(b)의 차이에 대해. 하여 기말고사를 준비할겸 적어본다. "a == b " "==" 연산자는 두 변수가 동일한 메모리 위치를 참조하는지 확인한다. 그렇기에 a와 b가 같은 String 객체를 가리키는 경우에만 true를 반환하는 것이다. 그렇기 때문에 메모리 위치가 다르면 내용이 같아도 false를 반환할 수 있다. "a.equals(b) " "a.equals(b)" .equals() 메서드는 두 String 객체의 내용이 동일한지 비교한다. 그렇기에 문자열 내용이 동일한 경우, .equals()는 true 를 반환합니다. 문자열의 내용을 비교하므로 객체의 메모리 위치가 다르더라도 내용이 같으면 true 를 반환할 수 있다. 2023. 10. 18.
[JAVA] 비정적(non-static) 멤버 변수와 정적(static) 멤버 변수의 차이와 RAM(메모리) 배치 자바를 공부하던 도중 비정적(non-static) 변수와 정적(static) 변수에 대해 RAM에 각각 어떻게 배치되는지에 대한 기록을 적어보도록 하겠다. 비정적(non-static) 멤버 변수 (인스턴스 변수): 비정적(non-static) 멤버 변수는 클래스의 각 인스턴스(객체)마다 별도의 메모리 공간에 저장된다. 각 객체(인스턴스)는 해당 변수의 값을 독립적으로 가질 수 있습니다. 인스턴스 변수는 객체가 생성될 때 초기화되며, 객체의 생명주기 동안 유지됩니다. 더보기 개별 메모리 공간: 비정적 멤버 변수는 클래스의 각 인스턴스(객체)마다 별도의 메모리 공간에 저장된다. 이것은 객체마다 독립적인 변수 값을 가질 수 있음을 의미하는데, 예를 들어, 여러 대의 자동차 객체가 있을 때, 각 자동차 객체는 .. 2023. 10. 17.
Discuss how Java program is executed on a computer. (자바가 컴퓨터에서 실행되는 과정) +-----------------------------------------------------+ | Java Source Code | +-----------------------------------------------------+ ↓ +-----------------------------------------------------+ | Java 컴파일러 (javac) | +-----------------------------------------------------+ ↓ +-----------------------------------------------------+ | 바이트코드 (.class 파일) | +------------------------------------------------.. 2023. 10. 17.
[JAVA] this의 역할 Java에서 this는 현재 객체를 가리키는 참조로 사용된다. 아래와 같은 역할로 주로 쓰인다고 한다. 변수 및 메서드 호출: 현재 객체 내에서 변수와 메서드를 호출할 때 사용된다. EX) this.variableName은 현재 객체의 인스턴스 변수를 참조하고, this.methodName()은 현재 객체 내의 메서드를 호출합니다. 생성자 호출: 생성자 내에서 다른 생성자를 호출할 때 사용되는데, 생성자에서 this()를 사용하여 같은 클래스의 다른 생성자를 호출할 수 있으며, 이를 통해 중복되는 초기화 코드를 피할 수 있다. 메서드 오버로딩 구분: 여러 메서드가 동일한 이름을 가질 때, this를 사용하여 현재 객체를 구분하는 데 도움을 준다. 이를 통해 메서드 오버로딩을 구분할 수 있다. 인스턴스 변.. 2023. 10. 17.
반응형