본문 바로가기

JAVA

(21)
람다식(2) 리턴 값이 있는 람다식 다음과 같이 매게 변수가 있고 리턴값이 있는 추상 메소드를 가진 함수적 인터페이스가 있다고 해보자 public interface MyFunctionalInterface{ public int method(int x, int y); } 인터페이스를 타켓 타입으로 갖는 람다식은 다음과 같은 형태로 작성해야한다. 람다식에서 매게변수가 두 개인 이유는 method()가 매게변수를 두개 가지기 때문이다. 그리고 method()가 리턴 타입이 있기 때문에 중괄호 {..}에는 return문이 있어야한다. MyfunctionalInterface fi = (x,y) -> {..return값;} 만약 중괄호 {}에 return문만 있고 return문 뒤에 연산식이나 메소드 호출이 오는 경우라면 다음과..
람다식이란? 람다식은 익명함수(anonymous function)를 생성하기 위한 식으로 객체 지향 언어보다는 함수지향 언어에 가깝다. 객체 지향 프로그래밍에 익숙한 개발자는 다소 혼란서러울 수 있찌만, 자바에서 람다식을 수용한 이유는 코드가 매우 간결해지고 컬렉션의 요소를 필터링 하거나 매핑해서 원하는 결과를 쉽게 집계할 수 있기 때문이다. 람다식의 형태는 매게 변수를 가진 코드 블록이지만 런타임 시에는 익명 구현 객체를 생성한다. 람다식 -> 매게 변수를 가진 코드 블록 -> 익명 구현 객체 예를 들어 Runbable 인터페이스의 익명 구현 객체를 생성하는 전형적인 코드는 다음과 같다. Runnable runnable = new Runnable(){ public void run(){..} } 위코드를 람다식으로 ..
DAO, DTO, VO DAO DAO(Date-Access-Object)나 Repository(저장소) 라는 이름으로 영역을 따로 구성하는 것이 보편적입니다. 다만 별도의 DAO를 구성하는 대신에 MyBatisd의 Mapper인터페이스를 활용합니다.데이터베이스의 data에 접근하기 위한 객체입니다.DataBase 접근을 하기 위한 로직과 비지니스 로직을 분리하기 위해 사용합니다. DTO = VO VO와 DTO는 일반적으로 유사한 의미로 사용하는 용어로, 데이터를 담고 있는 객체를 의미한다는 공통점이 있습니다 다만, VO의 경우는 주로 ReadOnly의 목적이 강하고, 데이터 자체도 불변하게 설계하는 것이 정석입니다. DTO는 주로 데이터 수집의 용도가 좀 더 강합니다. 웹화면에서 로그인하는 정보를 DTO로 처리하는 방식을 사용..
JAVA(데이터타입) 이두가지의 차이점은 간단하다 기본타입은 byte,char,int,long,float,duble,boolean을이용해서 선언된 변수는 실제 값을 변수 안에 저장하지만 참조 타입인 배열,열거,클래스,인터페이스를 이용해서 선언된 변수는 메모리의 번지를 값으로 갖는다.번지를 통해 객체를 참조한다는뜻에서 참조타입이라고 한다.따라서 기본타입은 변수가 스텝 영역에생성되고 객체는 힙영역에 생성된다. 힙(Heep) 힙은 객체와 배열이 생성되는 영역이다. 힙 영역에 생성된 객체와 배열은 JVM 스택 영역의 변수나 다른 객체의 필드에서 잠조한다.참조하는 변수나 필드가 없다면 의미 없는 객체가 되기 때문에 이것을 쓰레기로 취급하고 JVM은 쓰레기 수집기(GarbageCollector)를 실행시켜 쓰레기 객체를 힙영역에서 자동..
JAVA?? 면접 볼때 받았던 질문인데 정확하게 답을 알수 없어서 한번 책을 보면서 조사해봤다 그전에 프로그래밍 언어가 어떤 언어 인지 부터 알아봐야한다 일반적으로 프로그래밍 언어라고 하면 고급 언어를 말하는데, 대표적으로 프로그래밍 언어인 C , C++,JAVA 는 모두 고급언에 속한다. 이언어들로 작성된 내용을 소스 라고 부르고 이소스는 커파일러 라는 소프트웨어에 의해 기계어로 변환된 후 컴퓨터에서 실행할 수 있게 된다. 우리가 은히 말하는 프로그램이란 컴퓨터에서 특정 목적을 수행 하기 위해 프로그래밍 언어로 작성된 소스를 기계어로 번역한것이다. 자바란? 1999년도부터 인터넷이 횔성화되면서 웹 애플리케이션 구축용 언어로 자바가 급부상 했다. 그 이유는 기업체 및 공공기관의 다양한 서버 운영 체제에서 단 한 번의..