본문 바로가기

Programming Language/JAVA

(35)
[이클립스 문제해결] Unfortunately the Java version needed to run Eclipse Installer couldn't be found on your system. You need the following version or a higher version: 문제해결 이클립스를 설치하다보면 브라우저로 아래와 같은 문구가 노출되어 당황한 경험이있습니다. 문제 해결하는 방법을 공유하고자 글을 작성하였습니다. Unfortunately the Java version needed to run Eclipse Installer couldn't be found on your system. You need the following version or a higher version: 1. 아래 링크를 타고 사이트로 이동합니다. https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2020-03/R/eclipse-java-2020-03-R-win32-x86_64.zip Eclipse do..
[JAVA] 파일 입출력 ▶ 파일 입출력(InputStream,OutputStream,BufferedOutputStream,BufferedInputStream,DataOutputStream) ● 파일 입출력 : 말그대로 파일을 입력하고 출력하는것 입니다. (입력이란, 데이터를 내부로 받아들이는 것입니다. 출력이란, 데이터를 외부로 보내는것을 의미합니다.) ● 절대경로 : 컴퓨터 하드디스크의 이름부터 시작되는 경로 형식이다. 예) C:\Program Files\Java\jdk1.8.0_191\jre ● 상대경로 : 특정 폴더나 파일의 위치를 기준으로 하여 상대적으로 측정하는 경로이다. 예) ../../example.java ./example.java ● java.io.File 클래스 : 파일 입출력과 관리를 하는 클래스이다. 아래..
[JAVA] Object 클래스 - 오브젝트 클래스 ▶ Object 클래스 - 오브젝트 클래스 ● Object클래스 : 단순하게 모든클래스(API 또는 내가 만든 class 등)는 Object클래스의 자식클래스이다. 즉, Object클래스가 자바에서 '최상의 클래스'이다. Object클래스에는 다양한 메소드가 존재하는데, 어떤 클래스에서도 이 메소드를 호출할수있다. ● Object클래스 대표 메소드 종류 - equals() 메소드 : 두 객체가 동일한 객체라면 true를 리턴하고, 다르다면 false를 리턴합니다. - hashCode() 메소드 : 객체의 메모리 번지를 이용해서 해시코드를 만들어 리턴한다. 객체마다 다른값을 가지고 있다. - toString() 메소드 : 객체의 문자 정보를 리턴한다. 즉, 객체를 문자열로 표현한다. class Car{ p..
[JAVA] 업캐스팅(Up-Casting)과 다운캐스팅(Down-Casting) ▶ 업캐스팅(Up-Casting)과 다운캐스팅(Down-Casting) ● 업캐스팅(Up-Casting) : 서브 클래스 객체가 슈퍼 클래스 타입으로 변환되는것이다. package Test; class Parents { public void familyName() { System.out.print("이"); } public void name() { familyName(); System.out.println("순신"); } } class Daughter extends Parents { public void name() { familyName(); System.out.println("국주"); } } class Son extends Parents { public void name() { familyName(..
[JAVA] 래퍼 클래스(Wrapper class) 및 제네릭(Generic) ▶ 래퍼 클래스(Wrapper class) 및 제네릭(Generic) ● 래퍼 클래스(Wrapper class) : 기본 데이터타입 (int,double,String,char등)의 데이터를 객체로 취급해야하는 경우가 있습니다. 메소드의 인수로 객체 타입만 요구하면, 기본타입을 그대로 사용할 수 없습니다. 이때는 기본타입의 데이터를 먼저 객체로 변환하고 인수로 넣어줘야하는데 8개의 기본데이터타입에 해당하는 데이터를 객체로 만들어 주는 클래스를 말합니다. ( java.lang 패키지에서 제공합니다. ) ● 제네릭(generic) : 보통 데이터타입에는 int,String,long 등....과 같은 기본 데이터타입이 존재합니다. 제네릭은 이런 데이터 타입을 명시하지않은 상태라고 생각하시면 됩니다. 데이터타입을..
[JAVA] 오버라이딩(Overriding)과 final클래스 ▶ 오버라이딩(Overriding)과 final클래스 ● 오버라이딩(Overriding) : 상속받은 메소드의 내용을 재정의하는것입니다. 즉, 자신에 맞게 변경해서 사용하는 것입니다. ● 오버라이딩 조건 - 이름이 같아야 한다. - 매개변수가 같아야한다. - 리턴타입이 같아야 한다. - 자식의 접근제한자는 부모의 접근제한자보다 작을수없다. (private < package < protected < public) package Test; class Ferrari{ private int ye; public Ferrari(int ye) { this.ye = ye; } public int getYe() { return ye; } public void speed() { System.out.println(getYe..
[JAVA] 쓰레드(thread)와 프로세스(process),멀티쓰레드, 멀티프로세싱, 데몬쓰레드(Daemon),동기화(Synchronized) ▶ [JAVA] 쓰레드(thread)와 프로세스(process),멀티쓰레드, 멀티프로세싱, 데몬쓰레드(Daemon),동기화(Synchronized) ● 프로세스(Process) : 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램입니다. 또한, 메모리에 올라와 실행되고 있는 프로그램의 독립적인 개체입 니다. Code, Data, Stack, Heap영역의 구조로 되어있는 독립된 메모리 영역입니다. ● 프로세스(Process) 특징 - 프로세스는 각각 독립된 메모리영역을 할당받는다. - 기본적으로 프로세스당 최소 1개의 스레드(메인스레드)가 존재한다. - 각 프로세스는 별도의 주소 공간에서 실행되며, 한 프로세스는 다른 프로세스의 변수나 자료구조에 접근이 불가능하다. - 한 프로세스가 다른 프로세스의 자..
[JAVA] 예외(exceptional event) 강제예외,예외전가,예외처리 try-catch, finally ● 예외(exception) : 잘못된 코드, 부정확한 데이터, 예외적인 상황에 의해 발생하는 오류이다. ● 예외종류 - 강제 예외 : throw - 예외 전가 : throws - 예외 처리 : try() catch() import java.util.Scanner; public class Test { public static void main(String[] args) { int[] arr = {1,2,3}; for(int i=0;i