본문 바로가기
  • think normal

새로워지기/서른의 생활코딩234

ex11) java_thread public class MyThread7 extends Thread { MyThread7(ThreadGroup tg, String name) { super(tg, name); // super!! + 반드시 첫줄에 기술 //(그룹명,스레드명) // ->사실상 Thread(ThreadGroup group, String name)생성자 안에서 실행! // ->트리형식으로 묶어줌 } public void run() { while (true) { try { sleep(500); } catch (InterruptedException e) {} System.out.println(getName() + ": is running"); } } } class ThrGroup { static public void main(St.. 2012. 3. 4.
ex10) java_thread import java.util.*; public class ThreadJoin2 implements Runnable { public void run() { for( int i=1 ; i 2012. 3. 4.
ex9) java_thread public class proporty implements Runnable{ public void run() { for(int i=1;i 2012. 3. 4.
ex8) java_thread //두개의 쓰레드 객체가 교대로 수행되도록 import java.util.*; public class ThreadYield implements Runnable { public void run() { for( int i=1 ; i 2012. 3. 4.
ex7) java_thread import java.util.Date; public class ThreadSleep2 implements Runnable { public void run() { for( int i=1 ; i 2012. 3. 4.
ex6) java_thread /* public class ThreadPriority implements Runnable{ // run() method public void run() { for( int i=1 ; i 2012. 3. 4.
ex5) java_thread // 체팅에서 메시지 기다리다가 왔을경우 끄집어내는 경우 + 기다리면서 다른 작업을 할 필요가 있는경우 // 세개의 쓰레드 함수가 하나의 run()를 공유하는 경우 + 순서는 pc 성능에 따라 바뀔수있다. /* public class ThreadPriorityControl implements Runnable { // run() method public void run() { for( int i=1 ; i 2012. 2. 27.
ex4) java_thread /* Runnable :run() -> RunnableTest :재정의 run() (+ 추가로 별도의 Thread 상속한다. ->t => tt가 t 어딘가의 "번지값"에 참조되어야 한다. => 실행과정: t->tt번지값->tt->run() **/ public class RunnableTest implements Runnable { public void printNumber() {// 0부터 1까지 화면에 출력시키는 메소드 for( int i=1 ; i 2012. 2. 27.
ex3) java_thread // 메신저 사용시 ->for(;;){};가 아닌 Thread를 사용하여 동시에 다른작업도 가능하도록 함 // 서버상에서 메시지가 언제 들어올지모르니까.. 계속 쓰레드를 돌리면서 수행, // 루프로 돌리면 동시에 다른 작업이 불가! /* public class ThreadTest extends Thread { public void printNumber() { // 0부터 1까지 화면에 출력시키는 메소드 for( int i=1 ; i run()실행-> // printNumber()-> 아래의System.out.println 실행 System.out.println( "--------> main thread end" ); } }//버그 : 순서가 틀림 , 가장 나중에 끝나는 것은 "주 쓰레드"가 되어야 한다... 2012. 2. 27.
ex2) java_thread public class ProcessTest{ public static void main(String[] args) throws Exception { Runtime run = Runtime.getRuntime(); //이미 정의되있는 런타임 객체 포인터를 리턴 Process calc = null; Process exploer = null; try { calc = run.exec( "calc.exe" ); //run.exec->exe파일을 수행시켜주는 함수 } catch ( Exception ce ) { System.out.println( "Calcurator run fail " + ce.toString() ); } int end = calc.waitFor(); //ProcessTest안에서 calc가 종.. 2012. 2. 27.
ex1) java_thread public class ThreadTest001 { public static void main(String[] args) { Thread t1=Thread.currentThread(); System.out.println(t1); //Thread[main,5,main] // Thread:주쓰레드 // main: thread name:JVM,/ // 5:순위 // main:thread group name // 혼자 실행X main thread가 실행 System.out.println(t1.getName()); } } Open in Google Docs Viewer Open link in new tab Open link in new window Open link in new incognito window Do.. 2012. 2. 27.
java _20120227 (Thread) java _20120227 (Thread) 프로세스 : 현재 수행되고 있는 프로그램을 말한다. 주기억장치(OS)에 로드되서 실행되는 단위 (워드,엑셀...) 쓰레드 :프로세스 보다 작은 실행 단위를 말한다 (인쇄명령,색상변경,글꼴변경...) (프로세서 : 수행되고 있는 프로세스 중 "현재" 작업 권한을 갖는 프로그램을 말한다.) 쓰레드 사용 : 1) java.lang.Thread 클래스 (Thread 클래스로부터 직접 상속받아 스레드를 생성) class PrimeThread extends Thread {// Thread 클래스로부터 상속 long minPrime; PrimeThread(long minPrime) { this.minPrime = minPrime; } public void run() { //.. 2012. 2. 27.
ex29) java_oop public class ThrowException { public void exceptionMethod() throws ArrayIndexOutOfBoundsException { // 배열 선언 int[] intA = { 1, 2, 3, 4 }; // 배열의 저장된 값을 출력 for( int i=0 ; i 2012. 2. 24.
ex28) java_oop //새로운 예외를 정의 class UseException extends Exception{ //상속은 =Exception public UseException(String str){ //생성자= class와 같은 이름 super(str); //반드시 첫번째 라인으로 구성!!! } } // 상속관계 : object -> thowable -> Exception -> UseException //오류아닌경우 public class ExceptionTEst { public static void main(String[] args) { System.out.println("Main함수안:"); int i =11; //지역변수+ 값 UseException u; try{ if(i==10) throw new UseExcept.. 2012. 2. 24.
ex27) java_oop //형변환(강제/자동)은 상속관계(부모자식)에서만 가능하다. //형제끼린 X // class Human { String state = "인간"; public void state() { System.out.println( "인간이다" ); } } // class Woman extends Human { String name = "gemini"; // name변수의 값을 리턴 public String getName() { return name; } // 상위 클래스의 method overriding public void state() { System.out.println( name + "은 여자이다" ); } } // class Man extends Human { String name.. 2012. 2. 24.
ex26) java_oop //예외 처리 //이 프로그램은 컴파일러에 의해 에러가 발생된다. //즉 컴파일러는 a.txt 파일이 없을 경우에 발생하는 예외의 //처리를 요구한다 /* import java.io.*; class IOExceptionError { public static void main(String args[]) { FileReader file = new FileReader("a.txt"); // 만일 a.txt 파일이 없다면? int i; while((i = file.read()) != -1) { System.out.print((char)i); } file.close(); } }**/ /* import java.io.*; class IOExceptionError { public static void main(Str.. 2012. 2. 24.
ex25) java_oop //예외처리 02 public class ArrayException { public static void main( String[] args ) { // int형 배열 선언 int[] intArray = new int[3]; // 배열에 값을 저장 for( int i=0 ; i 2012. 2. 23.
ex24) java_oop //1 /* public class Sys02 { public static void main(String[] args) { System.out.println(args[0]); System.out.println(args[1]); } } **/ //2 /* public class Sys02 { public static void main(String[] args) { if (args.length !=2){ System.out.println(args[0]); System.exit(0); } System.out.println(args[0]); System.out.println(args[1]); } } **/ /* //3 public class Sys02 { public static void main(String[.. 2012. 2. 23.
ex23) java_oop //포장(Wrapper) 클래스 > Integer 클래스 : 예 class IntegerExam1 { public static void main(String args[]) { Integer num1 = new Integer(13); Integer num2 = new Integer(25); int hap = num1.intValue() + num2.intValue(); System.out.println("num1이 포장하고 있는 정수는 : " + num1.intValue()); System.out.println("num2가 포장하고 있는 정수는 : " + num2.intValue()); System.out.println("두수의 합 = " + hap); System.out.println("합의 2진 표현 .. 2012. 2. 23.
java _20120223 Integer 클래스의 주요 메소드 String toString() : 숫자를 문자로 static int parseInt(String str) throws NumberFormatException //static->class.으로 접근 static String toBinaryString(int num):문자를 바이너리(2,16,8진) 형태로 반환 //(Binary/HexString/OctalString) static Integer valueOf(String str) throws NumberFormatException //string-> int 형태로 cast System 클래스 클래스 변수 : in(키보트로부터 받는다) out(모니터로출력한다) err(오류출력) System.out.println() // .. 2012. 2. 23.
ex22) java_oop class TestAA { int i; TestAA(int a){ i = a; } public String toString(){ return "i 맴버 변수의 값은 : " + i + "이다."; //this.i=i } } public class Num03 { public static void main(String[] args) { TestAA t1 = new TestAA(10); TestAA t2 = new TestAA(20); System.out.println(t1); System.out.println(t2); } } class Test1 implements Cloneable { int a,b; Test1(int a, int b){ this.a = a; this.b = b; } public String.. 2012. 2. 23.
ex21) java_oop //import java.lang.*; public class Num01 { public static void main(String[] args) { Integer i =new Integer(10); //object -> num->Integer System.out.println(i.floatValue()); //자료형을 cast해준다. System.out.println(i.doubleValue()); //자료형을 cast해준다. //오토박싱 Integer ii=10; System.out.println(ii.floatValue()); //자료형을 cast해준다. System.out.println(ii.doubleValue()); //자료형을 cast해준다. //System.out.println(float(.. 2012. 2. 23.
ex20) java_oop //StringBuffer :메모리 절약 , string보다 빠르다. public class Str01 { public static void main(String[] args) { StringBuilder s1 =new StringBuilder("Test"); StringBuilder s2 =new StringBuilder("ABCD"); s1.append(s2); //추가 System.out.println(s1); System.out.println(s2); s1.append(10); //추가 System.out.println(s1); String s3 =new String("1234"); StringBuffer s4 = new StringBuffer(s3); System.out.println(s4); .. 2012. 2. 23.
ex19) java_oop class StringCompare { static String array1[] = { "IMF", "제주도", "자바도사", "한글나라", "Computer", "모카", "JAVA", "인터넷탐색", "초롱초롱", "come", "바람", "스크립터", "군고구마", "도서", "their","contry" } ; public static void main(String args[]) { System.out.println("======= 정렬전 데이터 =========="); for(int k = 0; k < array1.length; k++) System.out.print(array1[k] + " "); System.out.println(); System.out.println("======= 정렬후 .. 2012. 2. 23.
ex18) java_oop public class String01 { public static void main(String[] args) { String Str1; Str1="korea"; //"korea"인문자열의 주소를 Str1이 받는다. String Str2 = "korea";//"korea"인문자열의 주소를 Str2이 받는다. if(Str1==Str2){// 번지값 비교 System.out.println("같다"); }else{ System.out.println("다르다"); } String Str3 = new String ("Seoul"); //=String(String original) String Str4 = new String ("Seoul"); //=String(String original) //new로 선언하면.. 2012. 2. 22.
java _20120220 StringBuffer public final class StringBuffer -> final:상속X extends Object implements Serializable, CharSequence 직렬화 사용유형) - StringBuffer() : 메모리 절약 , string보다 빠르다. 묵시적으로 16개의 문자를 저장할 수 있는 객체를 생성 (초기값 안 썼을때) - StringBuffer(int size) : size 크기의 객체를 생성 - StringBuffer(String str) : str로 지정된 문자열과 추가로 16개의 문자를 더 저장할 수 있는 객체를 생성 java.lang 패키지 : 모든 자바 프로그램에 자동으로 포함되는 패키지 Number:추상적인 클래스 -> 객체정의new연산자 사용X.. 2012. 2. 22.
ex17) java_oop /* //수평적 다형성의 예 interface Inter{ //데이터나 맴버함수가 없어도 상관없다. //여러개 클래스의 공통 public void Display(); } class inter01 implements Inter{ public void Display(){ System.out.println("Inter01 class : "); } } class inter02 implements Inter{ public void Display(){ System.out.println("Inter01 class : "); } } class InterTest implements Inter{ public void Display(){ System.out.println("Inter02 class : "); } } publ.. 2012. 2. 22.
ex16) java_oop interface A03{ int i=10; void Sub1(); // 수행코드 포함할 수 없다. } interface A04{ int j=10; // static맴버! void Sub2(); } /* class A05{ int i =30; void display(){ System.out.println(i); } } */ class Test { // super :현재 class의 상위 클래스! int i=40; } class A05 extends Test implements A03,A04{ int i =30; // => this public void Sub1(){} public void Sub2(){} void display(){ int i=100; System.out.println(i); System.. 2012. 2. 22.