Programming
JAVA Basic) 자바 입출력
목차 대부분의 프로그램은 자료를 입력받는 기능과 저장하거나 쓰는 출력 기능을 구현한다. 음악, 동영상 파일을 재생하는 것도 입출력 기능에 해당되며, 채팅을 하고 SNS에 글, 사진을 피드하는 것도 입출력 기능으로 구현된다. 입출력은 프로그램의 가장 기본 기능이지만, 외부 저장 장치나 네트워크와 연동해야 하기 때문에 장치에 따라 다르게 구현해야 한다. 자바는 장치에 따라 독립적이고 효율적인 입출력 기능을 제공한다. 스트림이란? 자바에서 모든 입출력은 스트림(Stream)을 통해 이루어진다. 자료 흐름이 물의 흐름과 같다는 의미에서 사용되었다. 입출력 장치는 매우 다양하여 장치에 따라 입출력 부분을 일일이 다르게 구현하면 프로그램 호환성이 떨어질 수 밖에 없다. 이런 문제를 해결하기 위해 자바는 입출력 장치..
이클립스 자동 완성 기능 켜는 방법 (ctrl + Spacebar)
목차 종종 이클립스에서 작업 환경이 바뀌거나 워크 스페이스 오류가 발생하면 워크 스페이스를 초기화를 시켜 세팅을 다시 해야할 경우가 있다.그럴 때 자동 완성 기능이 꺼지거나 설정이 변경되는 경우가 있는데 계속 인터넷에서 찾아볼 수 없어서 포스팅한다. 자동완성 기능 켜는 방법 이클립스 Preferences 에서Java - Editor - Content Assist로 이동Insert single~ 체크Insert common~ 체크할 것Auto Activation에 그림과 같이 설정할 것 sout으로 System.out.println();이 작성되게 하기sout 작성 후 ctrl + Spacebar 하면 System.out.println();이 작성되도록 설정할 수 있다 이클립스 Preferences에서 ..
JAVA Basic) 예외 처리 - 연습 문제
JAVA Basic) 예외 처리 목차 소프트웨어를 사용하다 보면 여러 상황의 오류를 마주하게 된다. 잘 접속되던 사이트가 접속이 안된다거나, 스마트폰 앱이 갑자기 종료되는 경우가 그런 경우. 아무리 잘 만든 montoo.tistory.com 목차 Q1. 모든 예외 클래스의 최상위 클래스는 [ ]이다. Q2. try{}블록이 수행되면 항상 수행되는 블록으로서 주로 열린 파일이나 네트워크 리소스의 해제를 수행하는 블록을 구현하는 예약어는 [ ]이다. Q3. 예외 처리를 위해 try-catch 문장을 사용할 수도 있지만, 예외를 직접 처리하지 않고 미룰 때 사용하는 예약어는 [ ]이다. Q4. 사용자가 예외를 직접 발생시키기 위해 사용하는 예약어는 [ ]이다. 정답: Q1: Exception 클래스 Q2: f..
JAVA Basic) 예외 처리
목차 소프트웨어를 사용하다 보면 여러 상황의 오류를 마주하게 된다. 잘 접속되던 사이트가 접속이 안된다거나, 스마트폰 앱이 갑자기 종료되는 경우가 그런 경우. 아무리 잘 만든 소프트웨어라도 이런 상황은 언제든 발생할 수 있는데, 이런 오류가 발생해도 갑자기 종료되는 상황이 일어나지 않도록 '예외 처리' 방법에 대해 알아보자. 오류란? 프로그램에서 오류가 발생하는 상황은 두 가지다. 프로그램 코드 작성 중 실수로 발생하는 '컴파일 오류(compile error)' 실행 중인 프로그램이 의도하지 않은 동작을 하거나, 프로그램이 중지되는 '실행 오류(runtime error)' 실행 오류 중 프로그램을 잘못 구현하여 의도한 바와 다르게 실행되어 생기는 오류를 '버그(bug)'라고 한다. '컴파일 오류'는 개발..
JAVA Basic) 내부 클래스 - 연습문제
목차 Q1. 지역 내부 클래스에서 외부 클래스 메서드의 지역 변수를 사용할 수 있지만, 그 값을 변경하면 오류가 발생한다. 이때 사용하는 지역 변수는 [ ]변수가 되기 때문이다. Q2. 내부 클래스 중 클래스 이름 없이 인터페이스나 추상 클래스 자료형에 직접 대입하여 생성하는 클래스를 [ ]라고 한다. Q3. 자바에서 제공하는 함수형 프로그래밍 방식으로 인터페이스의 메서드를 직접 구현하는 코드를 [ ]이라고 한다. Q4. 람다식으로 구현할 수 있는 인터페이스는 메서드를 하나만 가져야 한다. 이러한 인터페이스를 [ ]라고 한다. Q5. 다음과 같이 두 정수를 매개변수로 하는 메서드가 인터페이스에 정의되어 있다. 두 정수의 합을 반환하는 람다식을 구현하고 호출해보자. package lambda; public..
JAVA Basic) 내부 클래스 - 스트림
먼저 내부 클래스와 람다식에 대한 이해가 필요한 내용입니다. JAVA Basic) 내부 클래스 목차 '내부 클래스(inner class)'는 말 그대로 '클래스 내부에 선언한 클래스'다. 내부에 클래스를 선언하는 이유는 대개 이 클래스와 외부 클래스가 밀접한 관련이 있기 montoo.tistory.com JAVA Basic) 내부 클래스 - 람다식 먼저 내부 클래스에 대한 이해가 필요한 내용입니다. '내부 클래스(inner class)'는 말 그대로 '클래스 내부에 선언한 클래스'다. 내부에 클래스를 선언하는 이유는 대개 이 클래스와 외부 클래스가 montoo.tistory.com 목차 자료가 모여있는 배열이나 컬렉션 또는 특정 범위 안에 있는 일련의 숫자를 처리하는 기능이 미리 구현되어 있다면 프로그램..
JAVA Basic) 내부 클래스 - 람다식
먼저 내부 클래스에 대한 이해가 필요한 내용입니다. JAVA basic) 내부 클래스 목차 '내부 클래스(inner class)'는 말 그대로 '클래스 내부에 선언한 클래스'다. 내부에 클래스를 선언하는 이유는 대개 이 클래스와 외부 클래스가 밀접한 관련이 있기 montoo.tistory.com 목차 자바는 객체를 기반으로 프로그램을 구현한다. 만약 어떤 기능이 필요하다면 클래스를 먼저 만들고, 클래스 안에 기능을 구현한 메서드를 만든 후 그 메서드를 호출해야 한다. 다시 말해 클래스가 없다면 메서드를 사용 할 수 없다. 그런데 프로그래밍 언어 중에는 함수의 구현과 호출만으로 프로그램을 만들 수 있는 프로그래밍 방식이 있다. 이를 '함수형 프로그래밍(Functional Programming : FP)'이..
JAVA Basic) 내부 클래스
목차 '내부 클래스(inner class)'는 말 그대로 '클래스 내부에 선언한 클래스'다. 내부에 클래스를 선언하는 이유는 대개 이 클래스와 외부 클래스가 밀접한 관련이 있기 때문. 또한 그 밖의 다른 클래스와 협력할 일이 없는 경우에 내부 클래스로 선언해서 사용한다. 내부 클래스를 간단히 표현하면 아래 그림과 같다. 내부 클래스는 선언하는 위치나 예약어에 따라 크게 네가지 유형으로 나누어진다. 인스턴스 내부 클래스 정적(static) 내부 클래스 지역(local) 내부 클래스 먼저 위 세 가지는 클래스 내부에 선언하는 변수의 유형(인스턴스, 저억, 지역 변수)과 유사하다. 마지막으로 클래스 이름 없이 선언하고 바로 생성하여 사용할 수 있는 익명(anonymous) 내부 클래스 가 있다. 그럼 변수 유..
JAVA Basic) 컬렉션 프레임워크 - 연습 문제
관련된 포스팅 JAVA Basic) 제네릭(Generic) 목차 프로그램에서 변수를 선언할 때, 메서드에서 매개 변수를 사용할 때도 모든 변수는 자료형이 있다. 대부분은 하나의 자료형으로 구현하지만, 변수나 메서드의 자료형을 필요에 montoo.tistory.com JAVA Basic) 컬렉션 프레임워크 목차 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯, 프로그램 개발도 사용하는 자료를 어떤 구조로 관리할 것인지가 중요하기 montoo.tistory.com JAVA Basic) 컬렉션 프레임워크 - List 인터페이스 '컬렉션 프레임워크'가 뭔지 모른다면, 아래 포스트부터 확인할 것 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯..
JAVA Basic) 컬렉션 프레임워크 - Map 인터페이스
컬렉션 프레임워크의 배경 지식은 이전 포스트를 참고하시길 바랍니다. JAVA Basic) 컬렉션 프레임워크 목차 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯, 프로그램 개발도 사용하는 자료를 어떤 구조로 관리할 것인지가 중요하기 montoo.tistory.com JAVA Basic) 컬렉션 프레임워크 - List 인터페이스 '컬렉션 프레임워크'가 뭔지 모른다면, 아래 포스트부터 확인할 것 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯, 프로그램 개발도 사용하는 자료를 어 montoo.tistory.com JAVA Basic) 컬렉션 프레임워크 - Set 인터페이스 이해가 되지 않을 경우 이전 포스팅을 참고하세요. 2021.10...
JAVA Basic) 컬렉션 프레임워크 - Set 인터페이스
이해가 되지 않을 경우 이전 포스팅을 참고하세요. 2021.10.05 - [Programming/JAVA 기초] - JAVA Basic) 컬렉션 프레임워크 JAVA Basic) 컬렉션 프레임워크 목차 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯, 프로그램 개발도 사용하는 자료를 어떤 구조로 관리할 것인지가 중요하기 montoo.tistory.com 2021.10.06 - [Programming/JAVA 기초] - JAVA Basic) 컬렉션 프레임워크 - List 인터페이스 JAVA Basic) 컬렉션 프레임워크 - List 인터페이스 '컬렉션 프레임워크'가 뭔지 모른다면, 아래 포스트부터 확인할 것 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구..
JAVA Basic) 컬렉션 프레임워크 - List 인터페이스
'컬렉션 프레임워크'가 뭔지 모른다면, 아래 포스트부터 확인할 것 JAVA Basic) 컬렉션 프레임워크 목차 흔히 프로그래밍을 건축에 비유를 한다. 원하는 건물을 지으려면 구조를 잘 잡아야하듯, 프로그램 개발도 사용하는 자료를 어떤 구조로 관리할 것인지가 중요하기 montoo.tistory.com 목차 'List 인터페이스'에는 객체를 순서에 따라 저장하고 유지하는 데 필요한 메서드가 선언되어 있다. 우리가 알고 있는 순차 자료 구조의 대표적인 예는 '배열'이다. 배열은 앞에서 다뤘었는데 자바에서 배열을 구현한 대표적인 클래스는 ArrayList와 Vector가 있고, 구현 방식은 다르지만 순차 자료 구조를 구현한 LinkedList가 있다. 그럼 객체 배열로 가장 많이 사용하고, 자주 활용한 Arra..