본문 바로가기

java9

[java 자바] 이클립스에서 현재 작성중인 클래스가 아닌 이전 클래스가 실행되는 경우 run configuration 에 가서 project 와 Main class를 바꿔도 보고, 왼쪽 바에 Java Application에서 이전에 실행중인 클래스를 삭제해봤는데도 실행이 안돼서 더 찾아봤더니 현재 작성중인 클래스에 main method 가 없었다. ( 더 정확히는 public static void main(String[] args) ) 자바 버전 7까지는 main method가 없어도 실행이 되는데 8버전 이후부터는 main method가 없을 경우 실행이 안된다고 한다. 컴파일러가 main method를 찾을수 없어서 이전 실행 파일을 계속 실행하는 거였다. 참고 : https://fmri.tistory.com/entry/JAVA-%EC%9D%B4%ED%81%B4%EB%A6%BD%EC%.. 2023. 6. 13.
[java 자바] The method println(boolean) in the type PrintStream is not applicable for the arguments (void) 에러 해결 System.out.println("정렬후->"+ Arrays.toString(data)); 이렇게 Arrays.toString으로 써야하는데 실수로 System.out.println(Arrays.sort(data)); Arrays.sort를 println 하라고 했더니 아래와 같은 오류가 떴다 The method println(boolean) in the type PrintStream is not applicable for the arguments (void) Arrays.sort가 반환형이 없는 void 타입이기 때문에 호출을 할수가 없어서 생기는 당연한 에러다. 해결 1. 메소드의 반환형을 바꿔서 void가 아닌 형태로 반환하게 만들거나 2. 사용하는 쪽에서 println을 사용하지 않고 retur.. 2023. 6. 8.
java.io. close() 해줘야 하는 이유! import java.io.File; import java.io.FileOutputStream; import java.io.IOException; public class FileOutputStreamTest { public FileOutputStreamTest() { // FileOutputStream : byte 단위로 파일 쓰기 try { File file = new File("C://java_test", "my_data.txt"); FileOutputStream fos = new FileOutputStream(file); String[] inData = {"자바에서 문자열을","파일로 쓰기 연습중\n","FileOutputStream 객체 활용함."}; for(String data : inData).. 2023. 1. 16.