본문 바로가기

STUDY/JAVA38

람다표현식1 람다 표현식(Lambda Expression) - 자바8에 추가된 함수형 프로그래밍. 람다 표현식의 특징 - 자울수 있는건 모두 지우자는 것.(코드로 표현하는 건 다 없애버려 코드를 간결하게 만드는 것.) - 코드를 줄이고 가족성을 향상. - 익숙하지 않은 사람에게는 모호하다는 단점. 예제를 보자.public interface LambdaPrint { public void print();}cs public interface LambdaOperation { public int add(int a, int b); // public int subtraction(int a, int b);}Colored by Color Scriptercs public class Lambda { LambdaPrint print = .. 2018. 1. 22.
InnerClass(내부클래스) 내부클래스 - 클래스 내에 선언된 클래스이다. - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근이 가능. - 복잡성을 줄임.(캡슐화) 내부클래스의 종류 - 멤버 클래스 - 지역 클래스 - static 클래스 - 익명 클래스 각각의 클래스의 구조는 아래와 같다. public class Outer { class MemberInner {} // 멤버 클래스 static class StaticInner {} // static 클래스 void myMethod() { class LocalInner {} // 지역 클래스 }}Colored by Color Scriptercs 멤버클래스class Outer { ... class Inner { } ...}cs - 객체를 생성해야만 사용할 수 있는 멤버들과 같은 위치에.. 2018. 1. 22.
Object클래스 Object 클래스 - 모든클래스의 최상위 클래스. - 모든 클래스는 Object를 암시적으로 상속받고 있다. - 모든 클래스가 공통으로 포함하도 있어야하는 기능을 제공한다. Object 클래스의 메소드 - equals - toString - clone - finalize 등등. class TEST {}cs위의 클래스는 아래의 클래스와 동일하다.class TEST extends Object{}cs암시적으로 Object 클래스를 상속받고 있다. toString() toString() 메소드는 현재 객체의 문자열을 반환하는 메소드이다.class Calculator{ int left, right; public void setOprands(int left, int right){ this.left = left; .. 2018. 1. 22.
예외처리 - 나만의 예외처리 만들기 커스텀 예외처리 정의? - 표준 예외클래스가 아닌 예외클래스를 만들어보자. - checked / unchecked 어느 예외를 사용할 것인지 정해야한다. checked / unchecked를 정하는 기준? - API쪽에서 예외를 던졌을 때 API 사용자 쪽에서 예외상황을 복구할 수 있다면 checked 예외를 사용한다. - 사용자가 API의 사용방법을 어겨서 발생하는 문제거나 예외상황이 이미 발생한 시점에서 그냥 프로그램을 종료하는 것이 덜 위험할 때 unchecked를 사용한다. unchecked 예외 소스package org.opentutorials.javatutorials.exception;class DivideException extends RuntimeException { DivideExcept.. 2018. 1. 22.