Java 개발 환경 설정
JAVA 변수
연산자
if문, switch문점수와 같이 연속된 데이터, 비교문이 몇 개 안되는 경우비연속 데이터, 비교문이 많을 경우.예제는 scanenr메서드를 쓰지 않았으나, 추가해서 직접 직책을 입력할 수 있게 코드를 수정 해 보았다.입력되는 값에 숫자를 썼으나, 연산하거나 하는 활동
예제 1의 코드는 배열과 값을 각각 생성하고 출력도 하나씩 각각 한다. 반복문도 배열의 길이를 먼저 구한 후 그 값을 반복문과 평균값에 대입한다.예제 1.1 에선 훨씬 코드가 간결해졌다. 배열 선언과 값을 넣는걸 한 줄로 만들었다. 그리고 scorse.length를 이
변수와 메서드를 가지고 있는 것 -> 메인 메모리에 올린 것속성(field)과 동작(method)으로 구성필드(field) = 변수(variable) = 항목(item)동작, 기능(function)데이터 저장getter / setter ex) Name -> getNam
코드 예제를 통해 메모리에 올라가서 실행되는 순서를 파악 해보기
Main 코드 Notice 코드 Shop 코드
<실행 결과> 300300600int타입의 배열을 선언하고 scores라는 변수를 만들어 100, 200 값을 넣어준다그 다음 scores의 배열의 합을 구해주는 addArray()메서드를 출력한다.이 코드는 System.out.println(addArray(n
public static finalpublic final class{ } : 형태가 있다. 변수들, 메서드들을 갖고 있다. 추가 불가능.추가(확장)을 하려면 상속을 받아서 확장(extends)해야 하는데 final은 확장 불가(상속불가).public final 변수명
객체 생성을 막기 위해 생성자를 호출하지 못하게 하거나, 객체의 특정 데이터를 보호하기 위해 필드에 접근하지 못하도록 막아야 한다. 그리고 특정 메소드를 호출할 수 없도록 제한 할 필요가 있다. 자바는 이러한 기능을 구현하기 위해 접근 제한자(Access Modifie
가끔 전체 프로그램에서 단 하나의 객체만 만들도록 보장해야 하는 경우가 있다. 단 하나만 생성된다고 해서 이 객체를 싱글톤(singleton)이라고 한다. 싱글톤을 만드려면 클래스 외부에서 new 연산자로 생성자를 호출할 수 없도록 막아야 한다.
List 컬렉션은 객체를 일렬로 늘어놓은 구조객체를 인덱스로 관리하기 때문에 객체를 저장하면 자동 인덱스를 부여하고 검색, 삭제할 수 있는 기능 제공List 컬렉션에는 ArrayList, Vector, LinkedList 등이 있다.add() : 객체 추가 메서드get
예제
자바 프로그램의 기본적인 클래스를 담고 있는 패키지java.lang 패키지에 있는 클래스와 인터페이스는 import 없이 사용 가능: ex) System.out.println(); String();ObjectSystemClassStringStringBuffer Stri
Java에서 데이터를 저장하는 방식은 임시로 저장하는 방법과 영구적으로 저장하는 방법 두가지가 있다. 임시로 저장하는 방법은 변수나 상수에 저장을 하는 방법이고, 영구적으로 저장하는 방법은 로컬 저장과 원격 저장이 있다.로컬에 저장하는 방법은 파일로 저장하면 되고 원격
Java Database Connectivity의 약자로 자바 언어로 데이터베이스 프로그래밍을 하기 위한 라이브러리이다. JDBC는 DBMS에 종속되지 않는 관련 API를 제공하기 때문에 데이터베이스가 어떤 종류인지는 상관 없다. JDBC 드라이버는 각 DBMS 회사에
ch11-1 컬렉션 프레임웍 컬렉션(collection) : 여러 객체(데이터)를 모아 놓은 것을 의미 프레임웍(framework) : 표준화, 정형화된 체계적인 프로그래밍 방식 프로그램의 생산성이 올라감, 유지보수가 쉬워짐 컬렉션 프레임웍 (collection fra
서로 관련된 클래스의 묶음클래스는 클래스파일(\*.class), 패키지는 폴더. 하위 패키지는 하위 폴더클래스의 실제 이름(full name)은 패키지를 포함.(java.lang.String)rt(runtime).jar는 클래스들을 압축한 파일(JDK설치경로\\jre\
ArrayList는 기존의 Vector를 개선 한 것으로 구현 원리와 기능적으로 동일ArrayList와 달리 Vector는 자체적으로 동기화 처리가 되어있다.동기화는 13장 Thread에서 자세히 배우게 됨.List 인터페이스를 구현하므로, 저장순서가 유지되고 중복을
원래는 이렇게 Date 클래스 앞에 패키지 이름을 써줘야 한다.import문을 넣으면 클래스를 사용할 때 패키지 이름을 생략할 수 있다.컴파일러에게 클래스가 속한 패키지를 알려준다.import 해주는 단축키 : Ctrl + Shift + Ojava.lang 패키지는 J
클래스와 클래스의 멤버(멤버 변수, 메서드)에 부가적인 의미 부여접근 제어자 : public, protected, (defautl), private4개중에 1개만 붙일 수 있음. default는 아무것도 붙이지 않는 것을 뜻함.그 외 : static, final, ab
배열은 구조가 간단하고 데이터를 읽는 데 걸리는 시간(접근시간, access time)이 짧다. 연속적이어서 간단한 계산으로 주소를 쉽게 얻을 수 있다.크기를 변경할 수 없다. (실행중에)\-크기를 변경해야 하는 경우 새로운 배열을 생성 후 데이터를 복사 해야 함. (
LIFO(Last In First Out)구조. 마지막에 저장(push)된 것을 가장 먼저 추출(pop)하게 된다.
수식 계산, 수식 괄호 검사, 워드프로세서의 undo/redo, 웹 브라우저의 뒤로/앞으로최근 사용 문서, 인쇄 작업 대기 목록, 버퍼(buffer)
컬렉션에 저장된 데이터를 접근(읽어오기)하는데 사용되는 인터페이스Enumeration은 Iterator의 구버전이다.ListIterator는 Iterator의 접근성을 향상 시킨 것 (단방향->양방향)boolean hasNext() : 읽어 올 요소가 남아있는지 확인한
배열을 다루기 편리한 메서드(static) 제공배열의 출력 - toString()배열의 복사 - copyOf(), copyOfRange()배열 채우기 - fill(), setAll()배열의 정렬과 검색 - sort(), binarySearch()binarySearch(
객체 정렬에 필요한 메서드(정렬기준 제공)를 정의한 인터페이스Comparable : 기본 정렬 기준을 구현하는데 사용Comparator : 기본 정렬 기준 외에 다른 기준으로 정렬하고자 할 때 사용compare()와 compareTo()는 두 객체의 비교 결괄르 반환하
Set 인터페이스를 구현한 대표적인 컬렉션 클래스순서를 유지하려면 LinkedHashSet 클래스를 사용하면 된다.범위 검색(from~to)과 정렬에 유리한 컬렉션 클래스HashSet보다 데이터 추가, 삭제에 시간이 더 걸림HashSet()HashSet(Collecti
순서를 유지하지 않고, 중복을 허용하지 않는다.HashSet은 객체를 저장하기 전에 기존에 같은 객체가 있는지 확인.같은 객체가 없으면 저장하고, 있으면 저장하지 않는다.ex) 객체를 확인하기 때문에 Integer 타입의 1과 String 타입의 1은 각각 저장이 된다
생성자에서 다른 생성자 호출할 때 사용다른 생성자 호출시 첫 줄에서만 사용 가능코드의 중복을 제거 할 때 사용인스턴스(객체) 자신을 가리키는 참조변수인스턴스 메서드(생성자 포함)에서 사용 가능지역변수(lv)와 인스턴스 변수(iv)를 구별할 때 사용인스턴스 자신을 가리키
여러 가지 형태를 가질 수 있는 능력조상 타입 참조 변수로 자손 타입 객체를 다루는 것객체와 참조변수 타입이 일치할 때와 일치 하지 않을때의 차이?자손 타입의 참조 변수로 조상 타입의 객체를 가리킬 수 없다.
알림을 보내는 기능을 만들 때 수신자의 ID값을 List<String>으로 담고나서 여러번 알림이 가는걸 방지 위해 아래 코드와 같이 중복 제거를 했었다.근데 이렇게 하는 것 보다 애초에 리스트를 담는 과정에서 중복을 제거하는 게 나을 것 같아서 HashSet을