Java(24)
-
입출력 (I/O)
0. 입출력 - 기준:프로그램을 기준으로 In, Out - 스트림(Stream): 양방향 통신시 2개의 stream이 필요 1) 입력스트림 2) 출력스트림 - 바이트 기반 스트림과 문자 기반 스트림 1) 바이트 기반 스트림 >바이트 단위로 데이터를 처리 (1바이트) FileInputStream FileOutpitStream ByteArrayInputStream ByteArrayOutputStream >보조 스트림: 다른 스트림의 기능을 향상시켜주는 스트림 FileInputStream FileOutpitStream BufferedInputStream BufferedOutputStream 2) 문자 기반 스트림 : 문자 단위로 데이터를 처리 (2바이트) > 문자 단위로 데이터를 처리 FileReader ..
2023.06.15 -
예외 처리
1. 프로그램 오류 1) 오류 - 프로그램이 오작동하거나 비정상적으로 종료되게 하는 원인들 - 오류의 종류: 컴파일 에러(컴파일 중), 런타임 에러(실행 중), 논리적 에러(실행은 되지만 의도와 다르게 동작) - 자바는 런타임 중 발생할 수 있는 오류를 '에러'와 '예외' 두 가지로 구분하였다. 2) 에러(error)와 예외(exception) - 에러: 프로그램 코드에 의해 수습될 수 없는 심각한 오류 (메모리부족, 스텍오버플로우 등), 에러 처리 -> X - 예외: 프로그램 코드에 의해 수습될 수 있는 다소 미약한 오류 개발자가 상황을 미리 예측하여 처리할 수 있는 것들, 예외 처리 -> O 3) 예외처리 - 오류든 예외든 상황이 발생하면 프로그램이 강제 종료된다 - 예외처리는 비정상적인 종료를 막고..
2023.06.15 -
Java API
java.lang 자바 프로그래밍을 위한 가장 기본적인 패키지와 클래스를 포함하고 있다. 1. java.lang.Object 모든 클래스의 최고 조상 2. java.lang.String - charAt() : String객체의 n번째 문자 값을 반환 - equals(Object anObject) : 문자열 같은지 비교 - length() : 문자열 길이 반환 - indexOf(int ch) : 문자의 위치 반환 indexOf(String str) : 해당 문자열의 시작 위치, 해당 문자열 없으면 -1을 리턴 - lastIndexOf(int ch) : 뒤에서부터 지정 문자 위치 인덱스 번호 찾기 - substring(시작x, 끝y) : 특정 위치의 문자부터 반환 (x이상~y미만), 끝 생략할 경우 ..
2023.06.15 -
인터페이스
1. 인터페이스란? (Interface) - 인터페이스는 일종의 추상클래스. - 단, 추상클래스보다 추상화정도가 높다. 추상클래스는 추상메서드를 하나라도 가지고있으면 추상클래스이고 일반 메서드와 멤버변수를 가질 수 있지만, 인터페이스는 오직 추상메서드와 상수만을 멤버로 가질 수 있고 그 외에는 다른 어떠한 요소도 허용하지 않는다. - 추상클래스가 '미완성 설계도' 라면, 인터페이스는 '기본 설계도' 라고 할 수 있다. 그러므로 주로 다른 클래스를 작성하는데 도움을 주는 목적으로 사용된다. 2. 인터페이스의 작성 interface 인터페이스이름 { public static final 타입 상수이름 = 값; public abstract 메서드이름 (매개변수목록); } - 인터페이스는 작성하는 것은 클래스..
2023.06.15 -
추상클래스
1. 추상클래스 (abstract class) - 추상 클래스: 미완성 설계도. 완성되지 못한 채로 남겨진 설계도 - 추상 클래스라는 것은 추상메서드를 포함하고 있는 클래스를 의미한다 - 추상클래스로는 인스턴스를 생성할 수 없다. 추상클래스는 상속을 통해서 자손클래스에 의해서만 완성될 수 있다. - 구현: abstract키워드 붙이기 abstract class 클래스이름 { .. } 2. 추상메서드 - 추상메서드: 선언부만 작성하고 구현부는 작성하지 않은 채로 남겨둔 메서드. {}작성하면 오류남 즉 설계만 해놓고 실제 수행될 내용은 작성하지 않았기 때문에 미완성 메소드 인것 - 메서드를 미완성 상태로 남겨 놓는 이유는 메서드의 내용이 송속받는 클래스에 따라 달라질 수 있기 때문에 조상클래스에서는 선언..
2023.06.15 -
다형성
1. 다형성이란? (Polymorphism) - 다형성이란 여러가지 형태를 가질수 있는 능력을 의미한다 - 자바에서는 한 타입의 참조변수로서 여러 타입의 객체를 참조할 수 있도록 함으로써 다형성을 구현하였다. 즉, 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 하였다는 것이다. - 예시로 설명 1) CaptionTv라는 클래스가 Tv라는 클래스를 상속받아 기능을 확장 Tv t = new Tv(); CaptionTv c = new CaptionTv(); 2) 원래는 인스턴스의 타입과 참조변수의 타입이 일치하는 것이 보통이지만, Tv과 CaptionTv와 같이 클래스가 서로 상속관계에 있을 경우, 조상 클래스 타입의 참조변수(Tv)로 자손 클래스 인스턴스(CaptionTv)를 참조..
2023.06.15