728x90
728x90

Java

System I/O

// 출력

System.out.println("...");
System.out.print("...");
// 1개
System.out.printf("... %d | %s",값1);
// 2개
System.out.printf("... %1$d  %2$s",값1,값2,...);


// 입력

int keyCode = System.in.read();

Scanner scanner = new Scanner(System.in);
String line = scanner.nextLine();
정수 %d
%6d
실수 %f
%.2f
문자열 %s
특수
문자
\t
\n
%%
  • 비교 : 기본타입 == , 문자열 equals()
728x90

'programming language > java' 카테고리의 다른 글

[Java] 변수  (0) 2023.09.30
[JAVA] Serializable 직렬화 - 역직렬화  (0) 2023.03.08
728x90

Java

Variable

  • 변수
  • 하나의 변수 하나의 타입
  • 변수 선언 : Type VariableName = Value ;
  • Keyword
기본타입 boolean,byte,char,short,int,long,float,double
접근 제한자 private, protected,public
*클래스 class,abstarct,interface,extends,implements,enum
*객체 new, instanceof,this,super,null
*메소드 void,return
*제어문 id,else,switch,case,defualt,for,do,while,break,continue
논리 true,false
*예외처리 try,catch,finally,throws
* 기타 package,import,syschronized,final,static
  • 로컬 변수 : 메소드 내에서 사용 메소드 실행이 끝나면 없어진다.
  • 변수 사용은 블록 내에서만
728x90

'programming language > java' 카테고리의 다른 글

[JAVA] System 입출력  (0) 2023.10.05
[JAVA] Serializable 직렬화 - 역직렬화  (0) 2023.03.08
728x90
https://docs.oracle.com/en/java/javase/17/docs/specs/serialization/serial-arch.html#overview

JAVA 를 이용한 모델을 만들기위해 다른 코드들을 보던 중 Serializable을 상속받은 모델 Class들을 보았습니다.예전에 한번 JAVA를 처음배울때 들었는데, 까먹고 있다가 이번 기회에 다시 보게 되면서 이게 무엇이였는지에 대해서 아주 간단하게 기록해 놓고자 합니다.

Serializable은 직렬화라고 불린다고 합니다. 

객체에 Serializable을 상속받아 만들면 직렬화 시킬 수 있고, 직렬화된 데이터를 다시 객체로 역직렬화 시킬 수 도 있습니다.

직렬화 대상 객체는 동일한 serialVersionUID 를 가지고 있어야합니다. 

 

private static final long serialVersionUID = ...;

PersonSerial.java 라는 파일을 만들고 Serializable을 상속받은 뒤 name 속성만 추가해 줬습니다.
 
// PersonSerial.java
package Serializable;

import java.io.Serializable;

public class PersonSerial implements Serializable{
    private static final long serialVersionUID = 1L;
    private String name;
    public PersonSerial(String name){
        this.name =name;
    }

    public String getName(){
        return this.name;
    }
}

main 함수 에서는 PersonSerial 객체 생서시에 hiio420을 넣고  FileOutputStream으로 저장된 객체를 FileInputStream으로 다시 불러오는 코드를 작성해 보았습니다.

package Serializable;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class Main {
    public static void main(String[] args) {
        PersonSerial p = new PersonSerial("hiio420");


        try(ObjectOutputStream os = new ObjectOutputStream(new FileOutputStream(new File("files","test")))){
            os.writeObject(p);
            os.flush();
            os.close();
        }catch(Exception e){
            e.printStackTrace();
        }



        try(ObjectInputStream is = new ObjectInputStream(new FileInputStream(new File("files","test")))){
            PersonSerial inputPersonObject = (PersonSerial)is.readObject();
            System.out.println(inputPersonObject.getName());
            is.close();
        }catch(Exception e){
            e.printStackTrace();
        }

    }
}
728x90

'programming language > java' 카테고리의 다른 글

[JAVA] System 입출력  (0) 2023.10.05
[Java] 변수  (0) 2023.09.30
728x90
728x90

+ Recent posts