일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- Up Casting
- node.js
- public static final
- finalize
- parameter group
- lambda
- 내부클래스
- Stream
- access modifier
- has-a
- constructor
- singletone
- dbeaver
- pycharm
- arraycopy
- extends
- 스트림
- identityHashCode
- 파이참
- generic programming
- Inbound
- 얕은 복사
- Java
- 자바
- 깊은 복사
- shebang
- 셔뱅
- 엔드포인트
- down casting
- Wrapper class
- Today
- Total
목록Java (14)
٩(๑•̀o•́๑)و

인터페이스 vs 일반 클래스 -> 인터페이스는 껍데기. 인터페이스는 추상 메서드로만 이루어져 있다. 구현 코드가 들어가지 않음. new 될 수 없음 & 변수가 있어 보이긴 하지만 new 할 수 없기 때문에 인터페이스에 선언되어있는 모든 변수는 상수임 & 디폴트 메서드, 정적 메서드, private 메서드는 인터페이스를 구현하는 여러 클래스에서 중복으로 구현하는 것을 막기 위해 기본적으로 제공되는 메서드. 인터페이스 : 어떤 객체(Object)에 대한 명세. 이 객체가 어떤 메서드들을 제공하고, 어떤 역할을 하는 객체임을 설명하는 명세. 주로 설계단계에서 만든다. class가 아닌 interface로 쓴다. 컴파일되면 .class파일이 된다. 반환 값함수 이름(함수의매개변수)까지 인터페이스에서 메서드가 정..

추상 클래스 1개 이상의 추상 메서드를 포함한 클래스 추상 메서드 : 구현 코드가 없이 선언부(리턴타입, 메서드명, 매개변수) 만 있는 메서드. body가 없음. 리턴타입 메서드명 (매개변수); 형태. 중괄호가 들어가지 않는다. public void test();와 public void test(){};는 다름. 전자는 추상메서드, 후자는 구현부에서 아무것도 하지 않는 일반클래스. abstract 예약어 사용. public abstract class 클래스명과 같은 형태로 클래스를 선언&메서드도 접근제어자 abstract 리턴타입 메서드명 (매개변수); 형태로 정의해야함. 추상 클래스는 new(인스턴스화)할 수 없음 실제 메서드 바디는 하위클래스에서 구현된다. 추상클래스는 상위 클래스용으로 주로 사용됨...

다형성(polymorphism) 하나의 코드가 여러 자료형으로 구현되어 다른 실행으로 이어지는것 같은 코드에서 여러 실행결과가 나옴 정보은닉, 상속과 더불어 객체지향 프로그래밍의 가장 큰 특징 중 하나 객체지향 프로그래밍의 유연성, 재활용성, 유지보수성에 기본이 되는 특징 다양한 여러 클래스를 하나의 자료형(상위 클래스)으로 선언하거나 형변환 하여 각 클래스가 동일한 메서드를 오버라이딩 한 경우, 하나의 코드가 다양한 구현을 실행할 수 있음 유사한 클래스가 추가되는 경우 유지보수에 용이하고 각 자료형마다 다른 메서드를 호출하지 않으므로 코드에서 많은 if 문이 사라짐 상속은 언제 사용? IS-A 관계일 경우(is a relation shop : inheritance) 일반적인(general)한 개념과 구..

클래스에서 상속(inheritance)의 의미 새로운 클래스를 정의할 때 이미 구현된 클래스를 상속받아서 속성이나 기능이 확장되는 클래스를 구현함 -> 객체지향언어의 특징 A라는 클래스보다 기능이 조금 더 확장된 유사한 클래스를 정의할 경우 A를 상속받아서 구현하면됨 코드의 재사용성 향상. 단 이때, 기존에 있던 클래스와 유사하되 조금더 확장된 클래스일 경우 사용. 이질적인 클래스간에는 상속을 사용해선 안됨 상속하는 클래스 : 상위클래스=parent class = base class = super class 상속받는 클래스 : 하위클래스=child class = derived class = subclass 클래스 정의시 extends 키워드 사용 자바에서 extends 뒤에는 딱 1개의 클래스명만 적을 ..

배열 자료구조의 일종 동일한 자료형의 순차적 자료 구조 동일한 자료를 순차적으로 관리하는 가장 기본적인 자료구조 물리적인 위치와 논리적인 위치가 동일. 쭉 연달아 생성 (linked list는 일치하지 않음) index는 0 ~ length-1 fixed length. 만일 길이가 다 찬다면 더 큰 배열을 생성하여 복사하여 사용. 처음에 넉넉하게 할당해야함 연속된 자료구조 - 0~length-1 까지의 element 중 중간에 값이 비어있는 element가 생기면 안된다! 거기를 끝으로 인식하기때문에 반드시 뒤쪽의 값들을 앞으로 땡겨서 빈자리를 채워줘야함. 중간에 값을 끼워넣고싶다면 그 이후값들을 쭉쭉 뒤로 밀어줘야함 첨자 연산(ex. arr[2])이 유리함. 연속적이기때문에 offset과 0번째 ele..

맴버 변수 객체가 가지는 특성, 속성을 변수로 표현 클래스의 멤버변수 =member variable = property = attribute 메서드 : 객체 내부에 구현된 함수. 멤버변수를 이용하여 클래스의 기능을 구현 = member function 함수 호출시 함수에서는 스택메모리를 사용. 처음 스택에는 main이 존재하는 상태. main에서 사용하는 지역변수까지.. -> 이때 함수호출(함수1)이 일어나면 main 위로 스택에 쌓임. -> 함수1의 매개변수의 값도 main에서 호출된 함수부로 복사가된다. -> 함수1에서 리턴이 될 경우 스택에는 main만 남게됨. 리턴됨과 동시에 자동으로 메모리가 반환된다.(pop) cf) 메소드 내부에서 사용하는 변수는 지역변수. 지역변수는 함수호출과 동시에 스택에..