# 플레이어 3명이서 돌아가며 플레이하고 랜덤주사위를 굴려서 앞으로 전진하는 프로그램
# 부루마블 게임
'Java > Java review exercises' 카테고리의 다른 글
Java [미로게임 2번키획득,종료버튼,클리어 추가] (0) | 2017.09.26 |
---|---|
Java [미로 게임] (0) | 2017.09.21 |
# 플레이어 3명이서 돌아가며 플레이하고 랜덤주사위를 굴려서 앞으로 전진하는 프로그램
# 부루마블 게임
Java [미로게임 2번키획득,종료버튼,클리어 추가] (0) | 2017.09.26 |
---|---|
Java [미로 게임] (0) | 2017.09.21 |
*예외처리
- try , catch , flnally문
- try : 예외가 발생할 가능성이 있는 코드의 에러 감지
- catch : 에러 예외처리
- flnally : 에러 발생의 유무없이 반드시 실행한다.
- 구조가 else if문과 같다.
* 직렬화
- 자바 프로그램에서는 모든 입출력 데이터를 스트림 형태로 주고 받는다.
- 객체를 파일에 저장할 때도 스트림으로 만드는 작업이 필요하여 이렇게 객체를
스트림 형태로 만드는 작업을 직렬화라고 하며 스트림으로 부터 다시 객체를 만들어
내는 작업을 역직렬화라고 한다.
- 직렬화가 가능한 클래스는 seializable 인터페이스를 구현하는 클래스이다.
- 직접 클래스를 선언할 때는 직렬화 기능 클래스로 만들기 위한 규칙과 방법을 고려해서
만들어야 한다.
#GregorianCalendar 객체를 직렬화 해서 파일로 저장하는 코드
#역직렬화
- 파일로 저장된 객체를 역직렬화 해서 GregorianCelendar 객체로 불러오는 코드
- 직렬화는 Serializable 인터페이스를 구현해야 가능
#직렬화 규칙
- 생성자나 메소드는 직렬화 대상이 되지 않는다.
- 객체가 가지고 있는 필드만 직렬화 된다. 단 , static 키워드가 붙거나
transient 키워드가 붙은 필드들은 직렬화가 되지 않는다.
#attachment 객체를 프로그램 실행 시 아예 오류를 발생시킨다.
#직렬화 이용해서 파일 저장법
# 작성자와 덧글 라벨을 만들고 텍스트로 글자를 입력받아 확인버튼을 누르면
작성자 이름과 덧글이 저장되는 프로그램 만들기 단 , 프로그램을 종료해도 남겨진 작성자의
이름과 덧글은 남아있어야한다.
Java [Canvas,Swing] (0) | 2017.09.30 |
---|---|
Java [자료구조] (0) | 2017.09.24 |
Java [Object,Inner 클래스] (0) | 2017.09.16 |
Java [Gregorian Calendar,Math,Wrapper] (0) | 2017.09.14 |
Java [GUI 프로그램2] (0) | 2017.09.13 |
*Object 클래스
- 최상위 클래스로서 자바의 모든 클래스는 Object클래스를 상속하였다.
- 암묵적으로 Object클래스를 상속받기때문에 생략
- import를 사용하지 않은 주요 클래스들은 Object클래스를 상속받는다.
#Object 클래스의 주요 메소드
- clone : 객체 자신의 복사본을 반환
- equals : 객체 자신과 객체 obj가 같은 객체인지 알려준다.
- hashCode : 객체 자신의 해시 코드를 반환한다.
- toString : 객체 자신의 정보를 문자열로 반환한다.
#equals 활용
# 네스티드 클래스
- 클래스나 인터페이스 안에 클래스를 선언하거나 인터페이스를 선언한 형태
- 네스티드 클래스에는 정적 네스티드 클래스 , 이너클래스 , 로컬 이너클래스가 있다.
- 다른 클래스를 에워싼 클래스를 인클로징 클래스 라고 한다.
#이너 클래스
- 인클로징 타입의 메소드와 같은 수준으로 선언된 네스티드 클래스
- 인클로징 클래스 내에서 이너클래스 사용방법
- 인클로징 클래스 외부에서 이너 클래스 사용방법
#정적 네스티드 클래스
- 인클로징 타입의 메소드와 같은 수준으로 선언된 static 키워드를 갖는 네스티드 클래스
- 인클로징 클래스 외부에서 정적 네스티드 클래스 사용방법
- 정적 네스티드 클래스와 이너 클래스는 인터페이스 안에서도 선언할 수 있다.
- 구현한 클래스에서는 마치 본인의 네스티드 클래스 처럼 사용할 수 있다.
#로컬 이너 클래스
- 메소드 본체 안에서 선언된 네스티드 클래스
- 선언된 메소드 내부에서만 사용할 수 있으며 반드시 사용하는 부분 전에 선언이 되어야 한다.
- 이름 없는 로컬 이너 클래스 사용방법
- 서브 클래스의 객체를 딱 하나만 생성할 필요가 있는 경우에 사용할 수 있다.
- 인터페이스도 동일하게 이름이 없이 사용 가능하다.
#네스티드 인터페이스
- 정적 네스티드 인터페이스 한 종류만 있다
- 사용방법은 인터페이스와 비슷하다.
- 모아서 간단히 보기위함
#네스티드 클래스 사용방법들
Java [자료구조] (0) | 2017.09.24 |
---|---|
Java [예외처리,직렬화] (0) | 2017.09.18 |
Java [Gregorian Calendar,Math,Wrapper] (0) | 2017.09.14 |
Java [GUI 프로그램2] (0) | 2017.09.13 |
Java [GUI 프로그램] (0) | 2017.09.12 |