안녕하세요 박스여우입니다.이번에는 JSON에 대해 알아보겠습니다. 우선, JSON이란?JavaScript Object Notation의 약자로 인터넷에서 자료를 주고받을때 표현하는 방법입니다. 특히 컴퓨터 프로그램의 변수값을 표연하는데 적합합니다. JSON의 형식은 javascript를 사용하지만, 언어나 풀랫폼에 독립적인것이 특징입니다. JSON의 기본자료형에는 정수,실수(고정,부동),문자열,배열,객체 가 있습니다. 문자열은 큰따옴표("")안에 넣어서 선언하고, 배열은 대괄호([])안에 넣어서 사용합니다. 또, 객체는 중괄호({})안에 넣어서 사용합니다. 아래는 문자열안에 넣을수있는것 들을 보여주고 있습니다. 위에서 말했듯이 큰따옴표 안에서 이루어 집니다. 아래는 객체의 구조를 나타내주고 있습니다.객체..
안녕하세요 박스여우입니다. 이번에는 java - swing을 통해 만든 gui생성시 창을 화면 중앙으로 정렬시키는 법과 URL을 통해 이미지를 얻어와 GUI에 뿌리는 법을 알아보겠습니다. 우선 화면을 중앙에 정렬시키는 코드입니다. 1 2 3 4 5 6 7 8 9 public static void centerToScreen(JFrame frame){ int digWidth = (int)frame.getSize().getWidth(); //자신이 생성한 gui의 넓이 높이를 구한다 int digheight = (int)frame.getSize().getHeight(); int scnWidth = (int)Toolkit.getDefaultToolkit().getScreenSize().getWidth(); in..
안녕하세요 박스여우입니다. 이번에는 Java를 이용한 폴더/디렉토리채로 복사하는 방법에대해 알아보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 public static void copys(File selectFile, File copyFile) { //복사할 디렉토리, 복사될 디렉토리 File[] ff = selectFile.listFiles(); //복사할 디렉토리안의 폴더와 파일들을 불러옵니다. for (File file : ff) { File temp = new File(copyFile.getAbsolutePath() +"\\"+ f..
안녕하세요 박스여우입니다.이번에는 Java의 Socket를 이용해서 파일을 전송하여 복사하는방법에대해 알아보겠습니다.※주의※이 글의 예제는 입문 수준의 코드이므로 모범적이지 못한 예제입니다.단순히 파일을 읽고 소켓통신을 하는 방법에 대해서만 참고하는 목적으로 읽어주시길 바랍니다! Client 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import java.io.DataOutputStream;import java.io.File;import java...
안녕하세요 박스여우입니다. 이번에는 FileWriter를 이용하여 File에 이어쓰기를 하는방법을 알아봅시다. 1 2 File f = new File("주소"); FileWriter fw = new FileWriter(f, true); cs 위를 살펴보면, File을 지정된 주소에 새롭게 생성한뒤, 파일 f를 수정하는 FileWriter을 생성, 뒤에 true는 이어쓰기 모드입니다. 만약 이어쓰기를 하지 않으려면, FileWriter fw = new FileWriter(f);만 작성하시면 됩니다. 그 뒤에, 1 fw.write("수정할 글 int,string등"); cs 을 통해 파일을 수정하시면 됩니다. 그런데,위의 영상에서 보시면 아시겠지만 FileWriter를 사용할땐 flush()를 사용하셔야합니..
Java - 객체지향(7) Package & Import Package 란 서로 관련된 클래스끼리 그룹단위로 묶어놓은것이다. 같은 이름의 클래스이지만, 서로다른 패키지에 존재하면 에러가 나지않습니다. 다른개발자가 개발한 클래스 라이브러리의 클래스 이름이 충돌하는경우를 방지하기에 유용한 기능입니다. 클래스가 물리적으로 하나의 클래스파일(.class)이지만, 패키지는 그 클래스들을 모아노은 하나의 디렉토리 입니다. 클래스는 보통 그 자체이름으로만 알고 있지만, 실제이름(full name)은 패키지명을 포함한 이름입니다. ex) String 클래스 = Java. lang.String 실제이름을 사용하는 경우는 import 선언을 할때 사용됩니다. Package! - 하나의 소스파일에는 첫번째 문장으로 단한번의..
Java - 객체지향(6) 상속 JAVA 는 클래스 간의 상속을 통해 또다른 방식의 코딩이 가능합니다. 상속이란? 조상의 클래스를 이용하여 새로운 클래스를 작성하는 기능입니다. 상속을 이용하면 적은 코드로도 새로운 클래스를 작성할수 있고, 조상코드를 조작하여 코드를 공통적으로 편리하게 관리할수 있는 장점을 가지고 있다. 상속에 대해서.. 클래스 선언 extends 조상클래스이름 ex) public class sun extends father{} public class mother{ int age; } public class sun extends mother {} 위의 그림을 통해 상속의 관계를 보면 알겠지만, 조상클래스의 멤버는 자손클래스에게 상속이 되어 자손클래스가 자유롭게 사용이 가능합니다. 단일상속..
JAVA 객체지향 5 변수의 초기화 위의 코드에서 변수 i는 전역변수이고 methods와 method,t는 지역변수입니다. 여기서 전역변수란 클래스 부분에 선언된 변수를 말하고, 지역변수란 메소드부분에 선언된 변수를 말합니다. 전역변수는 클래스 내부에있는 모든 메소드들이 사용할수 있지만, 지역변수는 그 메소드가 종료되면 사라지는 변수들입니다. main 메소드도 메소드 이기때문에 예외란 없습니다. 위의 코드에서 오류가 나는이유는 int형 변수 t를 초기화시키지 않은채로 사용하려했기 때문입니다. 아래는 변수를 초기화 시키지 않고 선언후의 초기값에 대해서 나타낸 표입니다. 변수형 초기값 boolean false char '\u0000' byte 0 short 0 int 0 long 0L float 0.0f d..
생성자 생성자는 인스턴스가 생성될때 호출되는 메소드 입니다. 인스턴스 초기화 작업에 주로 사용하는데요, 반복적인 인스턴스를 생성할때마다 인스턴스를 초기화 시키게 되면 불편하고 소스가 복잡해질수도 있기때문에 초기값을 지정해주어 조금더 편리하게 인스턴스를 생성할수 있도록 해줍니다. 특징 1.생성자가 없을땐 컴파일중에 자동으로 기본생성자를 만들어 줍니다. 하지만, 생성자를 하나라도 만들어 두었다면 직접 기본생성자를 만들어주어야 합니다. 2.매개변수를 전달받아 초기화할수있고, 생성자역시 메소드이기때문에 매개변수를통해 오버로딩이 가능합니다. 생성자의 선언방법! 클래스이름() {} 생성자 간의 호출 this() Car(String colors, String gearTypes, int doors){ color = "..
JAVA - 객체지향 (3) 클래스 메소드 & 인스턴스 메소드 인스턴스 메소드 이전에 말했듯이 인스턴스화를 통해 메소드호출을 하려면 참조변수.메소드이름(); / 참조변수.메소드이름(메개변수); 인스턴스 메소드는 인스턴스변수와 관련된 작업을 하는 메소드입니다 클래스 메소드 클래스 메소드는 클래스 변수를 사용하며 클래스이름을 사용합니다. 클래스이름.클래스메소드(); / 클래스이름.클래스메소드(매게변수); 인스턴스 메소드 인스턴스 메소드는 인스턴스 변수와 관련된 작업을 하고, 사용방법은 참조변수.메소드이름(); 참조변수.메소드이름(매개변수); 클래스&인스턴스 고려할점 1.클래스를 설계할때, 멤버변수를 모든 인스턴스에 공통적으로 사용해야 하는것은 static 을 붙인다. 2.클래스변수는 인스턴스생성이 필요없습니..