IT/JAVA18 컬렉션 프레임웍(CollectionFramwork) 컬렉션 프레임웍 (CollectionFramwork) 다수의 데이터를 다루는 데 필요한 다양하고 풍부한 클래스들을 제공한다. java.util패키지에 포함, jdk1.2부터 제공. List와 Set 인터페이스의 많은 공통된 부분을 Collection 인터페이스에서 정의하고, 두 인터페이스는 그것을 상속받습니다.따라서 Collection 인터페이스는 컬렉션을 다루는데 가장 기본적인 동작들을 정의하고, 그것을 메서드로 제공하고 있습니다. Collection 주요 메소드 boolean add (Object o) boolean addAll(Collection c) 지정된 객체(o) 또는 Collection(c) 의 객체들을 Collection에 추가한다. void clear() Collection의 모든 객체를.. IT/JAVA 2021. 3. 27. escape character 이스케이프 문자 제어문자 : 인쇄할수 없거나 키보드로 표현할수없는 특별한 문자를 가리키며, 역슬래시(\)와 한개의 문자와 결합하여 작성 \n : 개행(줄바꿈). 스크린 커서 위치를 다음줄의 처음으로 옮기, 아스키코드 : 10 \t : 수평탭. 스크린 커서를 다음 탭으로 옮김 \r : 캐리지리턴. 스크린커서의 위치를 현재 줄의 처음으로 옮긴다. 개행하지 않는다. 이 기호 다음에 오는 문자를 덮어 쒸운다. 아스키코드 : 13 \\ : 역슬래시 문자를 출력할때 사용. \" : 큰 따옴표를 출력할때 사용 \' : 작은 따옴표를 출력할때 사용 \b : 백스페이스 \u : 유니코드 문자 IT/JAVA 2021. 2. 12. 화면에서 입력받기 Scanner Scanner란? - 화면으로부터 데이터를 입력받는 기능을 제공하는 클래스 Scanner를 사용하려면 ① import문 추가 import java.util.*; ② Scanner객체생성 Scanner scanner = new Scanner(System.in); ③ Scanner 객체를 사용 int num = scanner.nextInt(); // 입력받은 정수를 num에 저장 밑에 두 문장을 위의 한문장으로 쓸 수 있다. String input = scanner.nextLine(); // 입력받은 내용을 num에 저장 int num = Integer.parseInt(input); // 입력받은 문자열(input)을 숫자(num)로 변환 숫자--------------->문자열 변환 : 숫자 + "" 문자열.. IT/JAVA 2020. 11. 25. 상수와 리터럴(constant & literal) 상수(constant) 상수 : 변수와 달리 한 번 저장하면 다른 값으로 변경할 수 없다. 상수를 선언하는 방법 변수의 타입 앞에 final을 붙여준다. 상수는 선언과 동시에 초기화하도록 한다. 상수의 이름은 모두 대문자로 하는 것이 관례이며, 여러 단어로 이루어진 경우 '_'로 구분한다. final int MAX_SPEED = 10; 리터럴(literal) 리터럴 : 12, 123, 3.14, 'A'와 같은 값들이다. 변수(Variable) 하나의 값을 저장하기 위한 공간 상수(Constant) 값을 한번만 저장할 수 있는 공간 리터럴(Literal) 그 자체로 값을 의미함 float : 접미사 생략 불가 double : 접미사 생략 가능 e : 10 제곱 문자 리터럴과 문자열 리터럴 char ch= .. IT/JAVA 2020. 11. 24. 변수(Variable), 명명규칙 변수(Variable) "변수란, 단 하나의 값을 저장할 수 있는 메모리 공간" 변수의 초기화 "변수의 초기화란, 변수를 사용하기 전에 처음으로 값을 저장하는 것" 변수의 종류에 따라 변수의 초기화를 생략할 수 있는 경우도 있다. 지역변수는 사용되기 전에 초기화를 반드시 해야 하지만 클래스 변수와 인스턴스 변수는 초기화를 생략할 수 있다. 변수의 명명 규칙 대소문자가 구분되며 길이에 제한이 없다. ( True true는 서로 다른 것으로 간주된다.) 예약어를 사용해서는 안 된다.(true는 예약어라서 사용 할 수 없지만, True는 가능하다.) 숫자로 시작해서는 안 된다.(top10은 허용하지만, 7up은 허용되지 않는다.) 특수문자는 '_'와 '$'만을 허용한다.($harp은 허용되지만, S#arp은 .. IT/JAVA 2020. 11. 24. Java API문서 설치하기 Java API문서 설치하기 자바에서 제공하는 클래스 라이브러리(JAVA API)를 잘 사용하기 위해서는 JAVA API문서가 필수적이다. 이 문서에는 클래스 라이브러리의 모든 클래스에 대한 설명이 자세하게 나와 있다. 1) JAVA API문서는 www.oracle.com/java/technologies/javase-jdk8-doc-downloads.html에 들어가서 주황색으로 표시된 zip 파일을 내려받는다. 2) 압축을 풀고 docs를 우클릭 후 복사를 누른다. 그 다음 jdk가 설치된 폴더로 가서 붙여넣기 한다. 3) docs 파일 -> api -> index를 클릭하면 java api 메인페이지가 나온다. 4) ctrl + F 누르면 입력창이 나타난다. 입력창에 원하는 클래스를 검색하면 된다. .. IT/JAVA 2020. 11. 24. 자바의 정석 공부 방법 Java의 정석을 구입하시고도 만족스럽게 공부하지 못하신다는 분들이 있어서 공부하는 방법에 대해서 좀더 자세히 알려드리고자 합니다. 먼저 책을 보시고 이해가 안가시면... 좀더 반복해서 읽어보시고요. 동영상이 있는 부분은 동영상도 참고하세요. 동영상강좌와 연습문제 풀이는 웹하드(webhard.co.kr)에서 다운 받으세요.(castello/javachobo) 그래도 이해가 안가면 카페에 질문 올리세요. 답변 열심히 해드리고 있습니다. 질문 한번도 안하면서 어렵다...고 하시는 분들은 인정할 수 없습니다. ^^; 0. Java를 처음 시작하려는 분들에게 '쉽다더니 어렵기만 하다...'는 분들이 계신데... 원래 프로그래밍이 그리 쉬운 것만은 아닙니다. 그렇게 쉬우면 프로그래머라는 직업은 존재하지 않겠죠. .. IT/JAVA 2020. 11. 23. 자바 - 추상클래스,템플릿 메서드 추상클래스의 개념 사전적 의미로 추상(abstract)은 실체 간에 공통되는 특성을 추출한 것을 말한다. 예를 들어 새, 곤충, 물고기 등의 실체에서 공통되는 특성을 추출해보면 동물이라는 공통점이 있다. 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상클래스라고 한다. 추상클래스와 실체 클래스는 상속의 관계를 가지고 있다. 추상클래스는 new연산자를 사용해서 인스턴스를 생성시키지 못한다. 추상 클래스 선언 추상클래스 사용하기 추상클래스는 주로 상속의 상위 클래스로 사용됨. 추상 메서드 : 하위 클래스가 구현해야하는 메서드. 구현된 메서드 : 하위클래스가 공통으로 사용하는 기능의 메서드 하위 클래스에 따라 재정의 할 수 있음. 템플릿메서드 템플릿: 틀리안 견본을 의미 템플릿 메서드 : 추상 메서드나.. IT/JAVA 2020. 11. 22. 자바 - 다형성(Polymorphism) 다형성의 개념 다형성은 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질을 말한다. 코드 측면에서 보면 다형성은 하나의 타입에 여러 객체를 대입함으로써 다양한 기능을 이용할 수 있도록 해준다. Animal클래스를 상속받아서 Human,Tiger,Eagle클래스를 생성하고 Animal클래스에 있는 move()메소드를 오버라이딩 했다 부모클래스의 변수에 넣었지만, 필드나 메소드가 작동하는 것은 new뒤에 붙은 자식클래스의 객체의 본질이다. hAnimal.move()는 부모클래스에 move()메소드가 있기 때문에 실행됨 그러나 hAnimal.readBooks는 부모클래스에 없으므로 오류 발생 부모타입으로 자동 타입 변환된 이후에는 부모 클래스에 선언된 필드와 메소드만 접근이 가능하다. 비록 변수.. IT/JAVA 2020. 11. 20. 자바 - 메소드 재정의 (오버라이딩 @Override) 메소드 재정의(@Override) 개념 메소드 오버라이딩은 상속된 메소드의 내용이 자식 클래스에 맞지 않을 경우, 자식 클래스에서 동일한 메소드를 재정의하는 것을 말한다. 메소드가 오버라이딩되었다면 부모 객체의 메소드는 숨겨지기 때문에, 자식 객체에서 메소드를 호출하면 오버라이딩된 자식 메소드가 호출된다. ※메소드를 오버라이딩할 때 주의할 점 부모의 메소드와 동일한 시그너처(리턴 타입, 메소드 이름, 매개 변수 리스트)를 가져야 한다. 접근 제한을 더 강하게 오버라이딩할 수 없다.(부모메서드가 public 접근제한을 가지고 있을 경우 오버라이딩하는 자식 메소드는 default나 private 접근 제한으로 수정할 수 없다는 뜻이다.) 새로운 예외(Exception)를 throws 할 수 없다. 마우스 우.. IT/JAVA 2020. 11. 20. 자바 - 상속(Inheritance) 상속(Inheritance)의 개념 부모클래스의 필드와 메소드를 자식 클래스에게 물려줄 수 있다. 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 코드의 중복을 줄여준다. 처음부터 모든 필드와 메소드를 작성하는 것보다 부모클래스가 가지고 있는 필드와 메소드를 상속받아 추가로 필요한 필드와 메소드를 작성하는 것이 보다 효율적이고 개발시간을 절약할 수 있다. 부모 클래스의 수정으로 모든 자식 클래스들의 수정 효과를 가져오기 때문에 유지 보수 시간을 최소화시켜준다. ※ 다른 언어와 달리 자바는 다중 상속을 허용하지 않는다. class 자식클래스 extends 부모클래스1, 부모클래스2 { } ※ 상속을 해도 부모클래스의 모든 필드와 메소드를 물려받는 것은 아니다. 부모클래스에서 private.. IT/JAVA 2020. 11. 16. 자바 - ArrayList List 컬렉션에 ArrayList , Vector, LinkedList 등이 있는데, 다음은 List 컬렉션에서 공통적으로 사용 가능한 List 이 터페이스의 메서드 들이다. 기능 메소드 설명 객체추가 boolean add(E e) 주어진 객체를 맨 끝에 추가 void add(int index, E element) 주어진 인덱스에 객체를 추가 set(int index, E element) 주어진 인덱스에 저장된 객체가 주어진 객체로 바꿈 객체 검색 boolean contains(Object o) 주어진 객체가 저장되어 있는지 여부 E get(int index) 주어진 인덱스에 저장된 객체를 리턴 isEmpty( ) 컬렉션이 비어 있는지 조사 int size( ) 저장된어 있는 전체 객체 수를 리턴 객체.. IT/JAVA 2020. 11. 15. 이전 1 2 다음