DevBoi

필요한 잡다한 개발지식 10 본문

[Computer Science]

필요한 잡다한 개발지식 10

HiSmith 2021. 7. 29. 11:13
반응형

1. 자바 캡슐화

- 자바 캡슐화는 변수와 함수를 하나의 클래스로 묶고, 외부에서 쉽게 접근하지 못하도록 은닉하는것이 핵심이다.

객체의 직접적인 접근을 막고, 객체가 제공하는 필드, 메소드를 통해서만 접근이 가능하도록 하는것이다.

(getter,setter)

장점으로는 객체내 정보손상, 오용을 방지하고, 데이터가 변경되어도 다른 객체에 영향을 주지 않기 떄문에

독립성이 좋다. 또한 처리된 결과 사용으로 이식성이 좋고, 객체를 모듈화 할수 있어, 하나의 모듈 처럼 사용가능하다.

ex. private 변수, public getter,setter

 

2. map과 set의 차이

- set은 순서를 보장하지 않는다. 또한 key와 value의 중복을 허용하지 않는다.

- map 또한 순서를 보장하지 않지만, key에대한 중복은 허용하지 않으나, value에 대한 중복은 허용가능하다

예)

map은 이런식으로 key만 다르게 주고, value를 다 1로 주어도, get 및 put이 가능하다.

또한 map은 key,value 에 대한 형태로 값을 가진다.

Hashset은 어떨까?

두개를 add해도, 1개의 값만 존재하여, size가 1이다.

값을 출력해도, 중복은 허용하지않는다.

 

3. hashmap은 null을 허용하나?

 

hash map에서는 key에 대한 null을 허용한다. value에 대한 null도 허용한다.

하지만 hashTable 에서는 null에 대한 것을 허용 하지 않는다.

 

위와 같이 hashmap에서는  null허용, hashtable에서는 nPE 가 발생하는 것을 알수있다

 

4. 심볼릭 링크 하드링크

 

-심볼릭 링크, 소프트 링크는 바로가기 기능과 유사하다

특정 디렉토리의 파일을 다른 디렉토리에서 실행하려면, 절대 경로를 이용해 명시하거나,

디렉토리로 복사해야만 하지만, 바로가기 기능을 이용해, 원본 파일의 위치에 대한 정보를 가진 단축 아이콘을

만들어 편리하게 사용할수 있다.

 

-하드링크는 

정보만 가지고 경로를 알려주는 소프트링크와 달리

하드링크는 원본파일을 복사한 다음 이의 사본을 생성한다.

하드링크로 참조되고있는 값이나 데이터가 변경되면, 걸려있는 사본의 데이터도 같이 변경되어

항상 같은 값을 가지고있다.데이터를 안전하게 관리하고자 할때 주로 사용한다.

반응형