
instanceof 연산자 참조변수가 참조하고 있는 인스턴의 실제 타입을 알아보기 위해 instanceof 연산자를 사용한다. 타입을 확인하는 이유는 참조변수가 instanceof로 형 변환이 가능한 타입인지 연산하기 위함이다. 주로 조건문에 사용되며, instanceof의 왼쪽에서 참조변수를 오른쪽에는 타입(클래스명)이 피연산자로 위치한다. 그리고 연산의 결과로 boolean 값인 true, false 중 하나를 반환한다. instanceof를 이용한 연산결과로 true를 얻었다는 것은 참조변수가 검사한 타입으로 형변환이 가능하다는 것이다. 즉, 형 변환이 가능하다면 true, 불가능 하다면 false를 반환한다. 반드시 상속 관계일 경우에 사용한다. 자녀객체 instanceof 부모타입 ==> tru..

1. Create // 1번 방법 Create : 데이터 생성.추가 , 일반적으로 아래 두가지 방법이 사용된다. list.add(new Apple(10, "호랑이")); Apple a1 = new Apple(20, "코끼리"); list.add(a1); // 2번 방법 Create for(int i = 0 ; i < 5 ; ++i) { list.add(new Apple(i*10+20, "독수리"+i)); } 2. Reading // Reading : 데이터를 끄집어내는 것, 즉, 데이터를 읽는 것을 말한다. for (Apple item : list) { // System.out.println(item); // 이렇게 출력하면 자신 고유의 번호가 출력된다. item.output(); } 3. Update ..

1. Collections Collections는 내부에 static함수가 있기 때문에 객체를 생성하지 않고 바로 메소드를 사용 할 수 있다. Collection 프레임워크 등에서 sort()를 사용하면 컴퓨터가 알아서 정렬을 해 주는데 오늘은 sort()를 이용한 정렬에 대해 알아보고자 한다. 여기서 sort()는 Comparable 구현에 의해 정렬된 것이다. 2. Array.sort()와 Collections.sort()의 차이점은? 아래와 같이 쉽게만 이해하자! 가. Array.sort() - 배열 정렬의 경우 나. Collections.sort() - List Collection 정렬의 경우 3. Comparator과 Comparable은 무엇이 다른가? Comparator : 기본 정렬기준 외..

1. LinkedList(연결리스트) LinkedList란 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료구조이다. 이름에서 말하듯이 데이터를 담고 있는 노드들이 연결되어 있는데, 노드의 포인터가 다음이나 이전의 노드와의 연결을 담당한다. 늘어선 노드의 중간지점에서도 자료의 추가와 삭제가 O(1)의 시간에 가능하다는 장점을 갖는다. 그러나 배열이나 트리 구조와는 다르게 특정 위치의 데이터를 검색해 내는데에는 O(n)의 시간이 걸린다는 단점이 있다. 2. LinkedList(연결리스트)의 구조 노드(Node)와 링크(Link)로 구성된다. 노드(Node) : 실제 정보를 담고 있는 하나의 단위이다. 링크(Link) : 노드간의 위치정보를 저장하고 있어 연결리스트의..

1. JAVA Collection Framework JAVA에서 기본적인 자료구조를 제공하기 위한 환경 2. 각 인터페이스의 특징 인터페이스 구현 클래스 특징 List LinkedList Stack Vector ArrayList 순서가 있는 데이터의 집합, 데이터의 중복을 허용함 Set HashSet TreeSet 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않음 Map HashMap TreeMap HashTable Properties 키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합 순서는 유지되지 않고, 키는 중복을 허용하지 않으며 값의 중복을 허용함 3. Collection 인터페이스들의 특징 Collection 인터페이스를 상속받아 List와 Set 인터페이스가 된다..

1. 운영체제(OS)란? 하드웨어 자원들(cpu, memory, disk, tty)를 관리하고 프로그램들을 지원해주는 것 쉽게 말해 하드웨어를 감추고 겉으로 다른 프로그램들을 지원해준다고 보면 됨 하드웨어를 감춘다는 것은 프로그램을 사용하는 사람이 편하게 쓸 수 있게 각종 기반 작업을 지원하는 것임 간단하게 예를 들어 일반적으로 우리는 파워포인트나 워드를 쓸 때 프로그램이 cpu와 memory와 어떻게 소통하는지 등에 대해 신경쓰지 않는데 이것은 바로 운영체제 때문이다. 2. 커널(Kernel)이란? 커널은 본질적으로 프로그램이다. 우리가 흔히 하는 main()으로 시작하는 프로그램을 말함 하지만 다른 모든 프로그램과는 다르게 커널만이 가지고 있는 특별한 점이 있다. 바로 'Memory Resident'..

1. 리눅스란? UNIX 운영체제를 기반으로 만들어진 운영체제 리눅스는 유닉스와 마찬가지로 다중 사용자, 다중 작업(멀티태스킹), 다중 스레드를 지원하는 네트워트 운영체제 유닉스가 통신 네트워크를 지향하여 설계된 것처럼 리눅스 역시 서버로 작동하는데 최적화 되어 있음, 고로 서버에서 사용되는 운영체제로 많이 사용되고 있음 2. 리눅스의 특징 리눅스는 유닉스와 완벽하게 호환이 가능함 리눅스는 공개 OS다. 오픈소스이므로 누구든지 자유롭게 수정이 가능함 리눅스는 PC용 OS보다 안정적이며 보안쪽에서도 PC용 OS보다 비교적 성능을 가지고 있음 리눅스는 다양한 네트워킹 기술을 제공하고 있으며 서버용 OS로 적합함 배포판이 아닌 리눅스 그 자체는 무료임 오픈소스의 특징으로 인해 누구나 버그 수정이 가능함 윈도우..

1. 클라이언트(Client) / 서버(Server) 클라이언트/서버는 두 개의 컴퓨터 프로그램 사이에 이루어지는 역할 관계를 나타내는 것임 클라이언트/서버 개념은 단일 컴퓨터 내에서도 적용할 수 있지만, 네트워크 환경에서 더 큰 의미를 가짐 네트워크 상의 클라이언트/서버 모델은 여러 다른 지역에 걸쳐 분산되어 있는 프로그램들을 연결시켜주는 편리한 수단을 제공함 가. 클라이언트(Client) 다른 프로그램에세 서비스를 요청하는 프로그램 서비스를 사용하는 컴퓨터 나. 서버(Server) 클라이언트의 요청에 대해 응답해주는 프로그램 서비스를 제공하는 컴퓨터 일반적으로 서버프로그램이 먼저 활성화된 상태에서 클라이언트의 요구사항을 기다리는데, 대체로 다수의 클라이언트 프로그램이 하나의 서버를 공유함 서비스는 서..