본문 바로가기

Java

생성자(Constructor)도 메소드인가? 메소드로 이해하기 쉬운 생성자에 대하여 상세하게 살펴본다. 생성자의 기능과 형태 클래스는 초기화를 위하여 생성자(constructor)라는 특별한 코드 블록을 가질 수 있다. 즉, 생성자는 클래스가 new 표현식에 의해 인스턴스화되어 객체를 생성할 때 객체의 레퍼런스를 생성하기 전에 객체의 초기화를 위해 사용되는 코드의 블록이다. 따라서, 생성자는 자바 클래스의 멤버가 아니며, 멤버가 아니므로 상속되지 않는다. 따라서, 오버라이딩의 대상이 될 수도 없다. 또한, 일반적인 메소드 호출방법으로 호출할 수 없다. 일반적인 생성자의 형태는 다음과 같다. public class Example { public Example() { ... } } 이러한 생성자들은 다음과 같은 new 표현식을 통하여 객체의 생성과 함.. 더보기
자바에서 유닉스 명령어 실행 자바 어플리케이션으로부터 프로그램 호출 Tech Tips 1999년 12월 14일 판(http://developer.java.sun.com/developer/TechTips/1999/tt1214.html)에서 RMI (Remote Method Invocation)가 프로그램간의 통신에 어떻게 사용될 수 있는지 보십시오. 또 다른 통신 기술은 Runtime.exec 메소드입니다. 실행중인 자바 응용프로그램으로부터 프로그램을 불러내기 위해 이 메소드를 이용할 수 있습니다. Runtime.exec는 또한 프로그램의 표준 입출력 조정, 실행을 완료할 때까지 대기, 종료 상태의 획득 등의 프로그램에 관련된 연산을 수행할 수 있도록 합니다. 여기 이러한 특징을 보여주는 간단한 C 응용프로그램이 있습니다. #incl.. 더보기
Java 연산자 연산자 그냥 연산 할때 쓰는 놈들이다. 연산을 컴퓨터님 께서 자동적으로 해주면 얼마나 편할까? 하지만 아직 그정도의 컴퓨터가 없어 직접 써주어야 이놈이 돌아간다. 잡수다는 이정도에서 그만하고 연산자에 대해 알아 보겠다. 쉽게 말해서 더하기, 빼기, 곱하기, 비교등등 해주는 것이 연산자라 할 수 있다. 종류 연산자 사칙 연산 +, -, *, /, % 부호 연산 +, - 논리 연산 &, |, ^, !, &&, || 비트 연산 &, |, ^, ~, , >>> 대입 연산 =, +=, -=, *=, /=, %=, &=, |=, ^=, =, >>>= 문자열 연산 + 비교 연산 >, 피연산자1 > 피연산자2 피연산자1이 피연산자2보다 크면 true, 그렇지 않으면 (작거나 같으면) false 값 리턴 = 피연산자2 .. 더보기
Java Static 자바를 한번쯤 공부해본사람이라면 static키워드를 모르지는 않을 것입니다.하지만, 바르게 알고 있는 사람들은 그리 많지 않습니다. 자바경력자를 면접볼 때 static키워드에 대해서 질문하곤 합니다. 면접관 : static키워드에 대해서 설명해보세요. 응시자 : static키워드를 쓰면, 객체를 생성하지 않고도 변수나 함수를 사용할 수 있습니다. 면접관 : 왜 static키워드를 쓰나요? 응시자 : 객체를 생성하지 않아도 되니까 편리하고 속도도 빠릅니다. 면접관 : 그렇다면 모든 변수와 함수에 static을 붙이는 것이 좋겠네요? 응시자 : 가능한한 static을 붙이는 것이 좋다고 생각합니다. 면접관 : 어떤 경우에 static을 붙일 수 있고, 어떤 경우에 static을 붙일 수 없습니까? 응시자 :.. 더보기
Java Swing의 Parser을 이용하여 HTML 데이터를 읽어들여 Parsing 을 하기 import javax.swing.text.html.HTML; import javax.swing.text.html.HTML.Tag; import javax.swing.text.html.HTMLEditorKit; import javax.swing.text.MutableAttributeSet; import javax.swing.text.BadLocationException; import javax.swing.text.html.parser.ParserDelegator; import java.io.InputStreamReader; import java.net.URL; import java.net.HttpURLConnection; import java.util.Enumeration; public class Exa.. 더보기
Java Swing HTML Parser# http://java.sun.com/products/jfc/tsc/articles/bookmarks/ 기본 HTML 파싱 버전# 자바 스윙에서 제공하는 파서는 HTML 3.2 DTD를 기본으로 파싱한다. 다른 버전의 HTML 파싱 방법 [1]↓ # 스윙의 기본 파싱 DTD인 HTML 3.2로는 제대로 파싱이 되지 않는 경우가 발생할 수 있다. 이를 해결하고자, 다른 버전의 DTD를 지정함으로써 파싱을 할 수 있다. public static class ParserHTML extends ParserDelegator { /** * */ private static final long serialVersionUID = -4814411384900651146L; private static DTD dtd = null;.. 더보기