코락 CoRock
코딩하는 락스타
코락 CoRock
  • 분류 전체보기 (394)
    • frameworks (19)
      • spring (19)
      • spring-boot (0)
      • testing (0)
    • languages (94)
      • java (39)
      • kotlin (0)
      • python (42)
      • r (13)
    • libraries (0)
    • programming (239)
      • android (13)
      • c (17)
      • cpp (22)
      • database (18)
      • design-pattern (4)
      • data-structures (11)
      • git (8)
      • hadoop (6)
      • html-css (7)
      • issue (4)
      • javascript (26)
      • jsp (34)
      • os (29)
      • php (6)
      • preferences (19)
      • etc (15)
    • discography (37)
      • k-pop (18)
      • pop (19)
    • blog (4)

블로그 메뉴

  • Programming
  • Java
  • JavaScript
  • Discography
  • K-Pop Songs
  • Pop Songs
  • Blog
  • Guestbook

공지사항

인기 글

태그

  • CentOS
  • jsp
  • javascript
  • Spring
  • python
  • Android
  • 자바스크립트
  • r
  • 파이썬
  • linux
  • oracle
  • Java

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
코락 CoRock

코딩하는 락스타

languages/java

20. Generic Classes and Methods

2018. 2. 13. 20:25
반응형

클래스 변수


static인 이유?

인스턴스 생성과 관계없이 제일 먼저 호출되는 method라서


public인 이유?

main method의 호출 명령은 외부로부터 시작되는 명령이다.

일종의 약속으로 이해하자





Generic이 갖는 의미는 '일반화'이다.





[arrays]

Enhanced for Loop

for-each loop라고도 한다.


장점

ㆍ 코드의 양이 확 준다.

ㆍ 반복문 구성 과정에서 배열의 길이 정보를 직접 확인하고 입력할 필요가 없다.


for(요소 : 배열) {

반복할 문장들

}



컬렉션 프레임 워크

컬렉션 프레임워크의 대부분의 클래스들은 싱글 스레드 환경에서 사용할 수 있도록 설계되었다. 그래서 여러 스레드가 동시에 컬렉션에 접근한다면 의도하지 않게 요소가 변경될 수 있는 불안전한 상태가 된다.


synchronized method : Vector, Hashtable

not synchronized method : ArrayList, HashSet, HashMap


경우에 따라서 위 aayalist, ahsset, hasmamp 을 싱글 스레드 환경에서 사용하다가 멀티 스레드 환경으로 전달할 필요도 있을 것이다. 이런 경우에 대비해서 컬렉션 프레임웍은 비동기화된 메소드를 동기화된 메소드로 래핑하는 Collections의 synchronizedXXX() 메소드를 제공하고 있다. 매개값으로 비동기화된 컬렉션을 대입하면 동기화된 컬렉션을 리턴한다.



fill(), copy(), sort(List DataType), binarySearch()


Collections class : 정렬이라던지 여러가지 데이터와 관련된 작업을 하도록 도와주는 메소드들이 있다 그 메소드들은 전부 static이기 때문에 인스턴스를 만들 필요 없이 .메소드명으로 바로 호출가능하다



type safety 가 낮다


컴파일 과정에서 오류가 발견되게끔 코딩을 해야 한다



제네릭의 사용 이유


타입이 안전하지 않다

반응형
저작자표시 비영리 변경금지
    'languages/java' 카테고리의 다른 글
    • Method Overriding
    • [Java] Generic And Collection
    • [Java] GUI 프로그래밍
    • [Java] 멀티스레드
    코락 CoRock
    코락 CoRock
    A COder dreaming of being a ROCKstar

    티스토리툴바