일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오버라이딩
- XLF
- 배당성장
- 인플레이션
- mco
- 제태크
- 기업분석
- FCF
- 알고리즘
- 금리인상
- 백준
- 다형성
- 현금흐름표
- object
- StringBuffer
- 미국주식
- 주식
- 주린이
- 무디스
- 금리인하
- 접근제어자
- S&P500
- 프로그래머스
- javascript
- etf
- 잉여현금흐름
- 그리디 알고리즘
- 자바
- Java
- 객체지향
- Today
- Total
목록JAVA (77)
오늘의하루
Generics란 무엇인가? 컴파일 시 타입을 체크해주는 기능을 말하며 객체의 타입 안정성을 높이고 형변환의 번거로움을 줄일 수 있다. 실행시 에러가 발생하는 것을 컴파일 에러로 만들어 준다. JDK 1.5 이후 Generics를 꼭 사용해주는 것이 좋다. ArrayList tvList = new ArrayList(); tvList.add(new Tv()); // ok tvList.add(new Audio()); // Error! Tv 타입의 객체만 저장할 수 있는 ArrayList타입의 참조변수 tvList가 만들어졌다. 예제 ArrayList list = new ArrayList(); list.add(10); list.add(20); list.add("30"); Integer i = (Integer)..
Java에서 가장 중요한 개념인 객체지향에 대해 공부한 자료입니다. 객체지향 개념 코드의 재사용성을 높이고 코드의 관리를 수월하게 하며 신뢰성이 높은 프로그램의 개발을 가능하게 만들어준다. 클래스와 객체의 정의 클래스란 객체를 정의해 놓은 것을 말한다. 객체란 실제로 존재하는 개념이다. 객체는 인스턴스를 포함하는 일반적인 의미이다. 인스턴스화란 클래스로부터 인스턴스를 생성하는 것을 말한다. 객체의 구성 요소 객체에는 속성(변수)과 기능(메서드)으로 이루어져 있다. 객체에 있는 속성과 기능을 객체의 멤버라고 부른다. 인스턴스 생성과 사용 인스턴스를 생성하는 방법은 일반적으로 "클래스명 참조 변수명 = new 클래스명()"이다. Tv t; // 객체를 다루기 위한 참조변수를 선언 Tv t = new Tv()..
HashMap과 Hashtable은 Map 인터페이스를 구현한 대표 클래스이고 데이터를 키와 값 쌍으로 저장한다. HashMap(신버전)은 동기화 x, Hashtable(구버전)은 동기화 o Map은 데이터의 순서가 없으며, 키의 중복은 허용하지 않고 값의 중복은 허용한다. HashMap 순서가 없는 Map에서 순서를 유지하려면 LinkedHashMap 클래스를 사용하면 된다. 해싱(hashing) 기법으로 데이터를 저장(put)하며 데이터가 많아도 검색 속도가 빠르다. hashing이란? 해시 함수를 이용해서 해시 테이블에 데이터를 저장하고 읽어온다. 해시 테이블은 배열(접근성)과 LinkedList(변경 유리)가 조합된 상태이다. 더보기 TreeMap 범위 검색과 정렬에 유리한 컬렉션 클래스이며 Ha..
TreeSet은 이진 탐색 트리(binary search tree)로 구현되어있으며, 범위 탐색과 정렬에 유리합니다. 이진 트리의 경우 한개의 노드가 최대 2개의 하위 노드를 갖게 됩니다. TreeSet의 기본형태 및 특징 부모를 기준으로 작은 값은 왼쪽에 큰 값은 오른쪽에 저장된다. 데이터가 많아 질수록 비교 횟수가 증가하기 때문에 추가, 삭제에 효율성이 떨어진다. class TreeNode{ TreeNode left; // 왼쪽 자식 노드 Object element; // 저장할 객체 TreeNode right; // 오른쪽 자식 노드 } 데이터의 저장 boolean add(Object o) equals()와 hashCode()를 자동으로 호출한다. Set은 중복을 허용하지 않는다. TreeSet의 ..
HashSet은 Set인터페이스를 구현한 대표 클래스이며 순서를 유지하지 않는 데이터의 집합이고 데이터의 중복을 허용하지 않는다. 순서를 유지하고 싶다면 LinkedHashSet을 사용하면 된다. HashSet의 주요 Method 생성자 HashSet() : 기본 생성자 HashSet(Collection c) : Collection(c)을 저장하는 생성자 HashSet(int initialCapacity) : 초기 용량(initialCapacity) 설정 생성자 용량이 모자라면 내부적으로 초기 용량의 x2만큼 늘린다. HashSet(int initialCapacity, float loadFactor) : 용량을 x2 하는 시점(loadFactor)을 지정해준다. 예: loadFactor가 0.8일 경우 ..
컬렉션에 저장된 데이터를 접근하는 데 사용되는 인터페이스를 의미합니다. ListIterator(양방향)은 Iterator(단방향)의 접근성을 향상한 것이다. Iterator Method boolean hasNext() : 읽어 올 요소가 남아 있는지 확인 ( 있다면 true, 없다면 false) Object next() : 다음 요소를 읽어온다. hasNext()로 요소가 있는지 확인하고 next()를 사용하는 게 안정적이다. void remove() : 요소를 삭제한다. next() 호출 후 remove()를 호출해야 한다. void forEachRemaining(Consumer
컬렉션(Collection)이란? 여러 객체를 모아 놓은 것을 의미합니다. 프레임웍(Framework)이란? 표준화, 정형화된 체계적인 프로그래밍 방식을 말합니다. 컬렉션 프레임웍(Collection Framework) 컬렉션을 다루기 위한 표준화된 프로그래밍 방식 컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 클래스(Collection Class) 제공 저장, 삭제, 검색, 정렬 등등 Collection Class에는 Vector, ArrayList, HashSet 등이 있다. java.util 패키지에 포함되어 있다. (JDK 1.2부터 제공) Collection Framework의 핵심 인터페이스 List와 Set은 Collection 인터페이스의 자식 인터페이스이다. List 순서가 있는 데이터의 ..
남궁성의 코드초보스터디(자바 java... : 네이버 카페 전문가가 지도하는 스터디카페에요. 프로그래밍언어(자바 java, C언어)를 제대로 배우고픈 분들 오세요. cafe.naver.com 1단계 더보기 [문제1] 에제를 실행하면 '>>'와 같은 프롬프트가 나타나서 사용자의 입력을 기다리고, 사용자가 입력한 내용을 화면에 출력한다. 만일 사용자가 'q' 또는 'Q'를 입력하면 프로그램을 종료한다. 다음의 예제를 완성하세요. [예제ConsoleEx1.java] import java.util.*; class ConsoleEx1 { public static void main(String[] args) { while(true) { String prompt = ">>"; System.out.print(promp..
Object 클래스의 메서드 protected Object clone() : 자기 자신 객체 복제 Cloneable 인터페이스 구현한 클래스의 인스턴스만 복제가 가능 사용하려면 public으로 오버라이딩 해줘야한다. 인스턴스 변수가 참조형이면 객체도 복제되게 오버라이딩 필요 public boolean equals(Object obj) : 객체 주소 비교 String 클래스는 기본적으로 값을 비교하도록 오버라이딩 되어있다. public boolean equals(Object obj){ return (this == obj); // 주소 비교 } // 오버라이딩으로 객체의 값 비교로 바꾸기 class className{ public boolean equals(Object obj){ if(obj!=null &&..
1. 객체지향 언어의 특징 기존의 프로그래밍 언어에 몇 가지 규칙을 추가한 것이다. 코드의 재사용성이 높다. 코드의 관리가 수월하다. 제어자와 메서드를 이용해서 데이터를 보호하기 때문에 신뢰성이 높은 개발이 가능하다. Class란? 변수와 메서드(객체의 멤버 )의 집합이다. 2. 인스턴스 생성 및 사용 인스턴스 생성이란? class로부터 인스턴스를 생성하는 것 클래스명 참조 변수명 = new 클래스명(); 생성 과정 = new 연산자를 통해 class명의 인스턴스 생성 후, 생성된 인스턴스 주소를 참조 변수에 저장 인스턴스를 사용한다는 것은 class에 있는 변수 혹은 메서드들을 사용한다는 것이다. 참조 변수명. 변수; 참조 변수명. 메서드(); 클래스에 접근하기 위해서는 인스턴스 주소가 저장돼있는 참조..