공부방/JAVA

    자바 함수형 인터페이스

    들어가며자바 8에서 도입된 함수형 인터페이스(Functional Interface)는 현대 자바 프로그래밍의 핵심 개념 중 하나입니다. 람다식과 스트림 API의 기반이 되는 함수형 인터페이스에 대해 알아보겠습니다.함수형 인터페이스란?함수형 인터페이스는 단 하나의 추상 메서드만을 가지는 인터페이스를 의미합니다. Java 8부터 도입되었으며, @FunctionalInterface 어노테이션을 통해 함수형 인터페이스임을 명시적으로 선언할 수 있습니다.예시:@FunctionalInterface public interface SimpleFunction { void doSomething(); } 주요 함수형 인터페이스1. Function입력값 하나와 리턴값이 있는 가장 기본적인 함수형 인터페이스R a..

    [이것이자바다] chapter 1. 자바 시작하기

    " 이것이 자바다 - 신용권의 Java 프로그래밍 정복" 공부하며 정리한 글 입니다. chapter 1. 자바 시작하기 자바를 실무에서 요령껏 사용하다보니 기초가 부족해 실수하는 영역이 많아...예전에 보려고 사둔 책을 꺼내들었다. 물론, 이책의 자바버전과 현재 버전은 다르나 현재 사용하는 자바 버전에는 문제가 없어 해당 책으로 정리하며 공부를 해보려고 한다. 1. 1 프로그래밍 언어란? 기계어 : 컴퓨터가 이해할수 있는 언어로 0, 1로 이루어진 이진코드 자연어 : 사람이 일상적으로 사용하는 언어로 컴퓨터가 이해하기 힘든 언어(문자집합) 프로그래밍 언어 : 기계어와 자연어의 매개채로 사람이 컴퓨터와 대화(?)할 수있게 하는 언어 고급언어 : 좀 더 사람이 쉽게 이해할 수 있는 언어 > 컴퓨터가 바로 이..

    [모던 자바 인 액션] chapter 1. 자바 8, 9, 10, 11???

    " Modern Java In Action - 모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드 " 공부하며 정리한 글 입니다. Chater1. 자바 8,9,10,11: 무슨 일이 일어나고 있는가? 자바는 1996년 발표된 이유로 새로운 기능이 계속 릴리즈 되어 발전되어왔고, 현재에도 많이 쓰이는 언어중 하나이다. 이러한 발전에 있어서 가장 큰 변화가 자바 8에서 일어났다. 1.1 역사의 흐름은 무엇인가? 위에서 말한것과 같이 현재 11까지 릴리즈된 상황에서 매번 변화가 있었지만 자바 8에서는 그 역사상 가장큰 변화가 있었다. 자바 8은 이제 좀 더 자연어에 가깝게 간단한 방식으로 코드를 구현할 수 있게 변화하였다. 예를 들어, 그동아 자바에서 어떤 객체(사과)의 무게를 비교하기위해서..

    JAVA::파일의 수정 날짜 확인하기

    파일의 수정 날짜 확인하기 자바에서 파일을 사용하는 경우를 종종 접하게 되는데 이경우 파일의 수정날짜를 확인해야하는 경우가 있을 것이다. 이 경우 여러가지 방법을 사용할 수 있는데 해당 경우들에 대해서 소개를 해보도록 하겠다.(전부는 아닐 수 있음) BasicFileAttributes File.lastModified Files.getLastModifiedTime Files.getAttribute BasicFileAttribute 사용 파일의 attribute(속성)을 읽어서 만든 객체를 통해 해당 파일의 수정날짜 등의 파일 속성을 담고있다. 그 속성객체에서 파일의 수정날짜를 출력시킴으로써 파일의 수정날짜를 확인 할 수 있다. 사용 package java.nio.* Example source code im..

    JAVA::JVM에 대한 이해

    이 글은 '백기선의 더 자바, 코드를 조작하는 다양한 방법' 강좌를 듣고 해당 내용을 공부하며 정리한 글입니다. JVM에 대한 이해 자바를 사용할 때 사용하게 되는 JVM, JRE, JDK 그리고 자바에 대해서 알아보려고 한다. JVM이란? Java Virtual Machine의 약자. 자바 애플리케이션을 클래스 로더를 통해 읽어 들여 자바 API와 함께 실행하는 것으로 JAVA와 OS사이에서 중개자 역할을 수행하여 JAVA가 OS의 영향을 받지 않고 재사용할 수 있게 해준다. 자바, JVM, JRE, JDK JVM(Java Virtual Machine) 자바 가상 머신으로 자바 바이트 코드(.class파일)를 OS에 특화된 코드로 변환(인터프리터와 JIT 컴파일러)하여 실행 바이트 코드를 실행하는 표준..

    JAVA::자바에서 형변환(Casting)하기

    형변환(Casting) 알고리즘 문제를 해결하다 보면 종종 숫자를 string으로 변환해서 문제를 해결하거나 char형으로 변경해서 문제를 해결하는것이 더 유리한 경우도 있습니다. 그리고, 그 외에도 작업을 하다보면 여러 타입간의 연산을 수행하거나 특정 형식을 맞추기위해 형을 바꿔야하는 경우가 있습니다. 이러한 경우에 변수나 리터럴 타입들을 다을 타입으로 변환해주느데 이것을 형변환이라고 합니다. 정의(Definition) 변수나 리터럴 타입을 다른 타입으로 변환하는 것 형변환 종류(자동 vs 강제)?? 그렇다면 현변환은 어떻게 해야할까? 일반적으로 컴파일러에 따라 형변환을 생략하더라도 알아서 자동적으로 추가해서 형변환시켜주는데 이를 자동형변환(묵시적 형변환)이라고 한다. 그리고 그렇지 않은 경우 바꿀 타..