일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- access modifier
- dbeaver
- 파이참
- shebang
- 셔뱅
- 깊은 복사
- node.js
- finalize
- Inbound
- lambda
- has-a
- identityHashCode
- public static final
- Java
- 엔드포인트
- parameter group
- 내부클래스
- arraycopy
- Stream
- down casting
- singletone
- 얕은 복사
- pycharm
- extends
- generic programming
- 스트림
- Wrapper class
- constructor
- Up Casting
- 자바
- Today
- Total
목록Computer Science (63)
٩(๑•̀o•́๑)و

추상 클래스 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) 메소드 내부에서 사용하는 변수는 지역변수. 지역변수는 함수호출과 동시에 스택에..
magic number란? :파일들은 각각 고유한 포맷을 가지고 있는데 포맷의 기본이 되는 내용. chapter_6.pcap파일을 열어서 [conversation]을 해보면 다음과 같이 나온다. 첫번째 세션의 경우엔 port A 55488에서 port B 22로의 통신임을 알 수 있다. 여기서 22번 포트의 경우 telnet등의 평문데이터를 보호하기 위해 암호화 처리하는 프로토콜로 이 세션을 [Follow stream]했을 때 확인할 만한 문자열이 없다. 두번째 세션은 port A 54419에서 port B 80(HTTP)으로의 통신으로 이를 [Follow stream]해보면 텅 빈화면이 나오는데 이를 다시 필터링 해보면 다음과 같다. [SYN],[ACK],[SYN,ACK]으로 세션을 맞는 과정과 [FI..
텔넷(Telecommunication Network Protocol)이란? :원격지 컴퓨터를 액세스하기 위한 사용자 명령들과 TCP/IP 기반의 프로토콜 ->자신이 사용권한을 가지고 있다는 전제하에 다른 사람의 호스트 컴퓨터를 원격지에서 액세스할 수 있는 기능을 제공한다. chapter_5.pcap을 오픈하고 [Conversation]을 클릭하면 Telnet(포트번호 23)만이 존재함을 알 수 있다. 이 라인을 필터링 해보면 처음 1,2,3라인에서 [SYN],[SYN,ACK],[ACK]를 보아 TCP의 세션연결과정인 3 Way Handshaking임을 알 수 있다. 그리고 라인 4~268에서는 로그인 및 명령어 등을 사용한 내역이 포함되어 있다. 마지막으로 라인 269~272를 보면 [FIN,ACK],[..