java (9) 썸네일형 리스트형 JAVA 스터디 23 - 메서드 참조(method reference) 메서드 참조 ? 하나의 메서드만 호출하는 람다식은 '메서드 참조' 로 더 간단히 할 수 있다. static 메서드 참조 //1.문자열 s 를 파라미터로 받아서 Int로 변환하여 반환하는 메서드 Integer method(String s){ return Integer.parseInt(s); } //2.위 메서드의 람다식 표현 Function func = (s)->Integer.parseInt(s); //3.위 람다식을 메서드 참조 표기 //입력값 출력값에 대한 정보가 Function의 제네릭에 들어 있기 때문에 //2번의 (s)를 지우고 아래처럼 사용할 수 있다 . //메서드만 참조해주면 알아서 타입을 잡아준다. Function func = Integer::parseInt 메서드 참조가 이해가 안간다면 메.. JAVA 스터디 21 - Predicate의 결합 predicate는 조건식을 정의할 때 사용하는 함수형 인터페이스다 연산자의 && (and) , || (or) 와 같이 and(), or() , negate()로 두 Predicate를 하나로 결합(default 메서드) 할 수 있다. 예제 코드 import java.util.function.Predicate; public class PredicateExam { public static void main(String[] args) { //세개의 Predicate 를 구현하였다. Predicate a = i->ii i%2 == 0 ; //negate() 반대로 만든다 i=100 으로 바꾼다. //연산자의 !와 같다. Predicate notA = a.negate(); //i>=100 && i=100 && .. JAVA 스터디 17 - ENUM enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet enum 이란 ? enum이란 상수 그룹을 나타내는 특수 "클래스"이다 enum의 특징 1.내부적으로 enum 은 class를 사용하여 구현된다. enum FoodType{ KOREAN,JAPANESE,AMERICAN,ITALY; } //내부적으로는 아래와 같이 구현된다. class FoodType{ public static final FoodType KOREAN = new FoodType(); public static final FoodType JAPANESE = new FoodType(); public static final FoodType AMERICAN = new Fo.. JAVA 스터디 13 - 접근제어자 제어자 (Modifier) 제어자란 클래스와 클래스 멤버의 선언 시 사용하여 부가적인 의미를 부여하는 키워드를 의미한다. 자발에서 제어자는 접근 제어자 와 기타 제어자로 구분 할 수 있다 . 기타 제어자는 경우에 따라 여러 개를 함께 사용할 수도 있지만 , 접근 제어자를 두 개 이상 같이 사용할 수는 없다. 이러한 접근 제어자와 기타 제어자는 조합에 따라 함께 사용할 수 있다. 접근 제어자 (access modifier) 객체 지향에서 정보 은닉(data hiding)이란 사용자가 굳이 알 필요가 없는 정보는 사용자로 부터 숨겨야 한다는 개념이다. 그렇게 함으로써 사용자는 언제나 최소한의 정보만으로 프로그램을 손쉽게 사용할 수 있게 된다 . 자바에서는 이러한 정보 은닉을 위해 접근 제어자라는 기능을 제공.. JAVA 스터디 12 - 패키지 1.package 키워드 자바에서 패키지란 클래스와 인터페이스의 집합을 의미한다 . 서로 관련이 있는 클래스나 인터페이스를 함께 묶음으로써 파일을 효율적으로 관리할 수 있게 된다. 또한 ,협업 시 서로 작업한 클래스 사이에서 발생할 수 있는 이름 충돌 문제까지도 패키지를 이용하면 피할 수 있다. 자바에서 패키지는 물리적으로 하나의 디렉터리를 의미한다. 따라서 하나의 패키지에 속한 클래스나 인터페이스 파일은 모두 해당 패키지 이름의 디렉터리에 포함되어 있다. 이러한 패키지는 다른 패키지를 포함할 수 있으며 , 이때 디렉터리의 계층구조는 점으로 구분된다. java.lang.String JAVA 스터디 9 - 추상 클래스와 추상메서드 추상 클래스(abstract class) 추상 메서드(abstract method) 추상메서드란 자식 클래스에서 반드시 오버라이딩 해야만 사용할 수 있는 메소드를 의미한다. 자바에서 추상 메소드를 선언하여 사용하는 목적은 추상 메소드가 포함된 클래스를 상속받는 자식 클래스가 반드시 추상 메소드를 구현하도록 하기 위함이다 . 예를 들면 모듈처럼 중복되는 부분이나 공통적인 부분은 미리 다 만들어진 것을 사용하고 , 이를 받아 사용하는 쪽에서는 자신에게 필요한 부분만을 재정의하여 사용함으로 생산성이 향상되고 배포 등이 쉬워지기 때문이다 . 이러한 추상 메소드는 선언부만이 존재하며 , 구현부는 작성되지 않는다 . 바로 이 작성되어 있지 않은 구현부를 자식 클래스에서 오버라이딩하여 사용하는 것이다 . 추상 메서드.. JAVA 스터디 8 - 상속 자바에서의 상속(inheritance) 1.자바 상속의 특징 상속이란 기존의 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다. 상속은 캡슐화, 추상화와 더불어 객체 지향 프로그래밍을 구성하는 중요한 특징 중 하나이다 . 상속을 이용하면 기존에 정의되어 있는 클래스의 모든 필드와 메소드를 물려받아 ,새로운 클래스를 생성할 수 있다 . 이때 기존에 정의되어 있던 클래스를 부모 클래스(parent class) 또는 상위클래스 (super class), 기초 클래스 (base class)라고도 한다 . 상속을 통해 새롭게 작성되는 클래스를 자식클래스(child class) 또는 하위 클래스 (sub class), 파생 클래스 (derived class) 라고 한다. 상속의 장점 자바.. JAVA 스터디 6 - JUNIT5 과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 질 것. 이미 JUnit 알고 계신분들은 다른 것 아무거나! 더 자바, 테스트 강의도 있으니 참고하세요~ 과제 1. live-study 대시 보드를 만드는 코드를 작성하세요.(진행중) 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크 할 것. 참여율을 계산하세요. 총 18회에 중에 몇 %를 참여했는지 소숫점 두자리가지 보여줄 것. Github 자바 라이브러리를 사용하면 편리합니다. 깃헙 API를 익명으로 호출하는데 제한이 있기 때문에 본인의 깃헙 프로젝트에 이슈를 만들고 테스트를 하시면 더 자주 테스트할 수 있습니다. JUNIT 자바의 단위테스트 도구이다.. 이전 1 2 다음