Adventure Time - Lady Rainicorn '💻공부/Java ☕️' 카테고리의 글 목록
본문 바로가기

💻공부/Java ☕️18

[Java] - 생성자 이용해서 인스턴스 복사하기 ☺️ 남궁성님의 ' 자바의 정석'을 공부하고 정리한 글입니다. 해당 인스턴스와 같은 상태를 갖는 인스턴스를 생성자를 통해 만들 수 있다. 💡같은 상태의 인스턴스 : 두 인스턴스 모두 동일한 인스턴스 변수 값을 갖음을 의미 예시) 위의 코드에서 CarTest3 클래스의 인스턴스 생성 부분은 다음과 같다. Car3 c1 = new Car3(); Car3 c2 = new Car3(c1); //참조변수 c1이 생성자의 매개변수로 넘어감, c1의 복사본 c2생성 Car3의 참조변수 c1을 생성자의 매개변수로 넘겨주었고 new를 통해서 인스턴스를 생성했다. 참조변수를 넘겨받아서 같은 상태를 갖지만, new를 통해 생성했기 때문에 인스턴스 c1, c2는 서로 독립적인 메모리 공간에 존재하는 별도의 인스턴스가 된다. .. 2023. 2. 1.
[Java] - this(), this ☺️ 남궁성님의 ' 자바의 정석'을 공부하고 정리한 글입니다. this this(), this(매개변수) 인스턴스 자신을 가리키는 참조 변수 생성자 인스턴스의 주소가 저장되어있다. 같은 클래스의 다른 생성자를 호출시 사용 생성자간에 호출할 경우 클래스 이름 대신 this(), this(매개변수)를 사용하자 반드시 첫 줄에서만 호출하자 생성자의 매개변수로 선언된 변수이름이 인스턴스 변수 이름과 같을 경우 인스턴스 변수 앞에 this를 붙여주자 예시 1) 위의 코드처럼 생성자의 매개변수 이름과 인스턴스 변수 이름이 같을 경우 변수 구별을 위해 인스턴스 변수 앞에 this를 붙여줄 수 있다. this.color는 인스턴스 변수이고 color는 생성자의 매개변수이다. 만일 this를 붙여주지 않으면 color .. 2023. 2. 1.
[Java] - 클래스 멤버와 인스턴스 멤버 ☺️ 남궁성님의 ' 자바의 정석'을 공부하고 정리한 글입니다. 같은 클래스에 속한 멤버들 간에는 별도의 인스턴스 생성 없이 서로 호출이 가능하다. 단, 클래스 멤버가 인스턴스 멤버를 호출할 경우 인스턴스를 생성해야 한다. 💡클래스 멤버 : 클래스 변수, 클래스 메서드의 통칭 💡인스턴스 멤버 : 인스턴스 변수, 인스턴스 메서드의 통칭 🤔 이유 클래스 멤버는 클래스가 메모리에 올라갈 때 이미 자동적으로 생성한다. 인스턴스 멤버가 존재하는 시점에 클래스 멤버를 항상 존재하지만, 클래스 멤버가 존재하는 시점에 인스턴스 멤버가 존재하지 않을 수도 있기 때문이다. 인스턴스 멤버간의 호출에 문제가 없는 이유는 하나의 인스턴스 멤버가 존재한다는 것은 인스턴스가 이미 생성되었다는 것을 의미하기 때문이다. (하지만, 클래.. 2023. 2. 1.
[Java] - 클래스 메서드와 인스턴스 메서드 ☺️ 남궁성님의 ' 자바의 정석'을 공부하고 정리한 글입니다. 클래스 메서드(static 메서드) 인스턴스 메서드 메서드 앞에 static이 붙어있다. 메서드 앞에 static 붙어있지 않다. 객체 생성하지 않고도 호출 가능 반드시 객체 생성해야만 호출 가능 💡클래스 : 데이터(변수)와 데이터에 관련된 메서드 집합 🤔 클래스를 정의할 때, 어느 경우 static을 사용해서 클래스 메서드로 정의할까...? 메서드 중에서 인스턴스 변수나 인스턴스 메서드를 사용하지 않는 메서드를 클래스 메서드로 정의한다. 인스턴스 변수를 사용하지 않는다고 해서 반드시 클래스 메서드로 정의해야 하는 건 아니지만, 이렇게 하는 것이 일반적이다. (인스턴스 변수는 메서드 작업 시 인스턴스 변수를 필요로 하는 메서드이다.) 💡멤버 .. 2023. 2. 1.
[Java] - 컬렉션 프레임워크 컬렉션 프레임워크(Collection Framework)란? java.util 패키지에는 자료를 다룰 수 있는 자료구조 클래스가 존재한다. 다양한 자료들을 다양한 방식으로 관리하는 방법이 필요한데, 이러한 방법을 제공하는 것이 자료구조, 즉 컬렉션 프레임워크이다. 💡자료구조 : 자료를 저장할 수 있는 구조 컬렉션 프레임워크에서 가장 기본이 되는 인터페이스는 Collection이다. Collection 여기에 자료가 있다라는 것을 표현한다. 저장된 데이터의 순서를 기억하지 못하고 , 중복을 허용한다. 대표적인 메서드는 add(), size(), iterator()가 있다. 메서드 특징 add(Object) 컬렉션에 자료 추가 size() 저장된 자료의 수를 반환 iterator() 저장된 자료를 하나씩 꺼.. 2023. 1. 19.
[Java] - Set과 HashSet Set(집합)이란? Java의 컬렉션 프레임워크 중 하나로 데이터를 저장하는 추상자료형이다. 데이터의 순서를 보장하지 않고, 데이터의 중복을 허용하지 않는다. 즉, 중복되지 않는 원소의 모임 Set의 특징 집합에 있는 동일한 데이터를 저장하면 Set에는 중복된 데이터가 존재하지 않는다. (동일한 값을 삽입해도 Set에는 하나의 값만 존재 ) Set은 언제 사용할까? 중복된 데이터를 제거해야할 경우 데이터의 존재 여부를 확인해야할 경우 HashSet이란? Set의 대표 구현 클래스이다. 데이터의 순서를 보장하지 않고, 데이터의 중복을 허용하지 않는다. HashSet은 내부적으로 HashMap을 사용하기 때문에 자바에서 HashSet과 HashMap은 동일하다고 말할 수 있다. 사용방법 java.util.S.. 2023. 1. 17.