'java'에 해당되는 글 13건
- [05.21] 수업내용 - 추상 클래스 | 2007/05/21
- [05.04] 수업 내용 - I/O (2) | 2007/05/04
- [04.30] 수업 내용 (2) | 2007/04/30
- [04.13] 수업 내용 | 2007/04/13
- [04.09] 수업 내용 | 2007/04/09
- [04.06] 수업 내용 | 2007/04/06
- [04.02] 수업 내용 | 2007/04/02
- [03.30] 수업 내용 | 2007/03/30
- Splash Screen에 PrograssBar 만들기! | 2007/03/25
- 방학때 강의한 자바 PPT 자료 | 2007/03/11
[05.21] 수업내용 - 추상 클래스 :: 2007/05/21 12:18
1. 추상 클래스는 그 자체로 객체를 생성할 수 없다.
반드시 상속 받아서 그 클래스를 생성
2. Exam01 : 지난주 클래스를 조금 더 세련되게 바꿈
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/***********************************************************************************/
//추상 클래스 : 도형의 공통적인 속성을 가짐
more..
/***********************************************************************************/
/***********************************************************************************/
//사각형 관련 클래스
more..
/***********************************************************************************/
/***********************************************************************************/
//원 그리기 관련 클래스
more..
/************************************************************************************/
/************************************ MAIN *****************************************/
more..
/***********************************************************************************/
[05.04] 수업 내용 - I/O :: 2007/05/04 10:14
오늘 내용은 입출력에 대한 필수 사항이므로 암기 요망!!
1. Ex01 - Print from input str, int
import java.io.*;
public class Ex01 {
public static void main(String[] args) throws IOException {
// 입력 클래스
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// 출력 클래스
OutputStreamWriter osw = new OutputStreamWriter(System.out);
BufferedWriter bw = new BufferedWriter(osw);
PrintWriter pw = new PrintWriter(bw);
pw.print("문자열 : ");
pw.flush();
String str = br.readLine();
pw.println(str);
pw.flush();
pw.print("숫자 : ");
pw.flush();
int num = Integer.parseInt(br.readLine());
pw.println(num);
pw.close();
br.close();
}
}
2. Ex22 - Print from File
more..
3. Ex03 - Use Scanner Class
more..
※ next(): Finds and returns the next complete token from this scanner.
[04.30] 수업 내용 :: 2007/04/30 11:33
1. FILE I/O - exam1
more..
2. exam2
more..
3. exam3
more..
4. exam4
more..
5. exam5
more..
6. exam6
more..
7. exam7
more..
8. exam8
more..
[04.13] 수업 내용 :: 2007/04/13 09:10
1. 기본 문법
- Pass!!
2. do~while을 이용한 입력값 제한 점수 계산 프로그램
소스 보기
- 코딩 수를 줄인 개선된 프로그램
소스 보기
3. 한 문자를 입력 받아 대소문자 구별 예제
more..
[04.09] 수업 내용 :: 2007/04/09 11:42
1. static Inner Class Concept
more..
억지로 소스 쥐어 짜는거 짜증난다..ㅡㅡ
머지..이런 엉터리 소스는...ㅡㅡ
2. Exam_02
static 클래스 내 변수 접근
public class Outer {
more..
public class Exam_02 {
more..
}
변수를 지정할 때 public 접근이나 default 접근이나 캡슐화면에서는 둘다 위험하긴 마찬가지다. public이 조금 더 그러긴 하겠지만 둘 사이에 그렇게나 커다란 차이는 없을 듯 싶다.
차라리 private 이랑 public, default를 비교하는게 낫지...
3. ExamInput
쌩뚱맞게 갑자기 왠 요런 예제...ㅡㅡ
more..
[04.06] 수업 내용 :: 2007/04/06 10:01
1. 중첩 클래스(Inner Class) 의 예제
소스 보기
2. Inner Class 예제2
more..
[04.02] 수업 내용 :: 2007/04/02 11:28
1. static Keyword
- 멤버필드로만 가능
- 클래스 이름으로 접근 가능
- 객체 발생 전 메모리 할당
2. Exam_02.java
// static Keyword의 쓰임
package c0402;
public class Exam_02 {
private String name;
private double money;
private static float iyul;
소스 보기
public static void main(String[] args) {
소스 보기
}
}
[03.30] 수업 내용 :: 2007/03/30 10:06
1. 오늘의 주제 : 교수님 책 누가 가져갔나!!
2. 오늘의 부주제 : 교수님이 교통사고로 낚이셨다!!
3. this, this() 의 쓰임
4. Exam_01 예제
package c0330;
class Exam_01_Sub {
소스보기
};
public class Exam_01 {
public static void main(String[] args) {
소스보기
}
}
05. static
- static 필드 : 클래스 이름으로 접근 가능, 객체 발생 전 메모리 할당
Splash Screen에 PrograssBar 만들기! :: 2007/03/25 22:18
한국 썬 개발자 네트워크 여기저기를 들쑤시고 다니던 도중에,
Splash Screen 에 대한 소스를 발견했습니다.
Splash Screen 이란, 어떤 프로그램을 처음 실행하였을 경우 로딩 시간이 길 경우를 대비하여 미리 이미지를 띄워 프로그램이 로딩 중이거나 로딩 상황을 알리는데 사용하는데요.
뭐 예를 들어 이클립스를 처음 실행하고자 하는 경우 다음과 같은 화면이 뜨죠.

사실 지금 캡쳐화면에선 보이지 않지만, 이미지 아래쪽에 PrograssBar가 떠서 로딩 상황을 알리죠.
그 소스에서는 그냥 이미지 한 가운데 사각형을 그리면서 색깔만 바꿔주는 예제였는데요,
제 입맛에 맞게 아래쪽에 PrograssBar 를 그려주는 걸로 바꿔 봤습니다.
소스는 다음과 같습니다.
import javax.swing.*;
import java.awt.*;
import java.util.*;
public class ExtendedSplash {
public static void main(String args[]) {
Runnable runner = new Runnable() {
public void run() {
// 생성된 Splash Screen을 반환한다.
SplashScreen splash = SplashScreen.getSplashScreen();
// Splash Image를 Graphics2D의 인스턴스로 받는다.
Graphics2D g = splash.createGraphics();
// Splash 된 Image의 사이즈를 구한다.
Dimension dim = splash.getSize();
// Image 하단에 그려질 PrograssBar 배경 사각형 그리기
g.setColor(Color.GRAY);
// (x좌표, y좌표: 그려질사각형의 높이만큼 뺀다, 너비, 높이)
g.fillRect(0, dim.height - 20, dim.width, 20);
// 현재 진행 상황에 맞춰 그려질 Prograss 사각형
g.setColor(Color.GREEN);
// i가 Splash Image의 너비에 다다를 때까지
// 12에서 10은 그려질 사각형의 너비, 2는 사각형간의 간격이다.
for (int i=0; i< dim.width; i += 12) {
g.fillRect(i, dim.height - 20, 10, 20);
splash.update();
// 0.5 초의 간격으로 사각형을 그린다
// 실제로 이 부분에 로딩에 따른 작업 간격을 설정해 주는 부분이다.
try {
Thread.sleep(500);
} catch (InterruptedException ignored) {
}
}
JFrame frame = new JFrame("Splash Me2");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel label = new JLabel("프로그램이 시작되었습니다~!", JLabel.CENTER);
frame.add(label, BorderLayout.CENTER);
frame.setSize(300, 95);
frame.setVisible(true);
}
};
EventQueue.invokeLater(runner);
}
}
실제로 중요한 부분은 굵은 글씨입니다.
워낙 간단한 소스라서 쉽게 이해 하실 줄로 믿습니다.
소스를 보면 Splash Screen으로 띄워 줄 이미지를 설정하는 부분이 없습니다.
이는 실행할 때 지정해 줘야 하는데요.
다음과 같이 실행하면 됩니다.
java -splash:MyImage.png ExtendedSplash
이것보다 보다 효과적인 방법은 manifest 파일로 관리하는 겁니다.
다음과 같은 manifest.mf 파일을 만듭니다.
Manifest-Version: 1.0
Main-Class: ExtendedSplash
SplashScreen-Image: MyImage.png
jar -mcvf manifest.mf Splash.jar HelloSplash*.class MyImage.png
java -jar Splash.jar
Splash Screen 으로 사용 가능한 이미지 포멧은 png, jpg, gif 등이라고 명시하고 있네요.
이 소스로 제가 만든 Splash Screen 입니다.
이미지의 모델은 제 여친입니다. ^^땀


Splash Screen의 PrograssBar 가 꽉차게 되면 프로그램이 시작됩니다.
원래 이미지에 PrograssBar 크기만큼의 영역을 더 잡아보려고 삽질을 해봤으나,
부족한 저의 실력으론 힘들더군요.
아예 이미지 하단에 처음부터 PrograssBar의 여유영역을 만들어주는것도 좋을 듯 합니다.
그럼 유용하게 사용하세요~^^
방학때 강의한 자바 PPT 자료 :: 2007/03/11 09:48

방학중에 동아리에서 교육한 자료들을 공개 합니다.
PPT로 작성하다보니 자세한 설명은 생략되어 있네요.
모르시는 분은 그냥 한번 쓰~윽 훑어 볼 수 있는 내용이고,
좀 공부해보신 분들은 재미로 한번 보시는 것도 나쁘진 않을듯 하네요. ^^
중간 중간 빈 자료가 있는데, 이때는 동아리 사정상 교육을 안했던 때입니다.
중간에 자료가 끊긴것은 아닙니다. ^^




제4장클래스작성.ppt
2주차(금).zip