자바 (8) 썸네일형 리스트형 자바 프로젝트 - 한국수출입은행 API를 활용한 환율 조회 프로그램(1) 한국수출입은행 API 활용 프로그램(1) - API 인증키 발급 방법 안내 바로가기 미리보기 순서도(플로우 차트) 인증키 발급 방법 미리보기 순서도 1. url 연결해서 환율 정보 받아오기 2. 선택지 출력하고 입력 받기 3. 입력 받은 숫자에 따라 다른 값 출력해 주기 → 3-1. 1일 경우 국가 이름만 분리하여 출력하기 → 3-2. 2일 경우 조회할 국가를 한글로 입력 받고 조회 시간, 화폐 정보, 환율 출력하기 4. 다시 선택지 출력하고 입력 받기 반복, 0을 입력 받을 경우 종료하기 인증키 발급 방법 API를 활용하기 위해서는 API 인증키가 필요합니다. 1. 한국수출입은행 홈페이지를 방문합니다. https://www.koreaexim.go.kr/index 2. 상단 메뉴바에서 정보공개 -> 공공.. 자바 프로그래밍 - 인터페이스 인터페이스의 필요성 인터페이스는 예시 없이 정의만으로 이해하기에는 어려움이 있다. 그렇기에 예제를 먼저 확인하자. 집에서 컴퓨터 게임을 하기 위해 컴퓨터를 켰다. 게임 아이콘을 클릭하면 게임이 실행되고 종료 버튼을 누르면 꺼진다. 단순한 예시로 어떤 게임을 하든 게임은 실행되고 종료되는 행동이 존재한다. 이를 코드로 구현하자면 중복되는 코드가 발생한다. 또한 모든 게임은 '실행-종료'가 필수적으로 존재해야 하는데 이를 인터페이스로 구현하면 모든 게임을 실행하고 종료하는 코드를 입력하도록 강제할 수도 있다. 인터페이스 예제 코드 이번에는 인터페이스 자바 파일과 main + 인터페이스로 구현하는 클래스를 담은 파일, 두 가지로 구성했다. (물론 자바 파일과 main 메서드, 인터페이스로 구현하는 클래스 이 .. 자바 프로그래밍 - 생성자 생성자 >>> // 부모 클래스 >>> class Launch { >>> String menu; >>> >>> void setMenu(String menu) { >>> this.menu = menu; >>> } >>> } >>> >>> // 자식 클래스 >>> class Hamburger extends Launch { >>> void eatBurger() { >>> System.out.println("점심으로 " + menu + "먹었다."); >>> } >>> } 아래는 객체를 생성했던 방법이다. >>> Hamburger burger = new Hamburger(); 이 객체에는 부모 클래스에서 받았던 String 자료형의 menu가 있는데 그대로 출력하면 어떻게 될까 >>> System.out.pri.. 자바 프로그래밍 - 상속 개념 상속 자식 클래스가 부모 클래스의 기능을 그대로 물려받을 수 있는 상속(inheritance) 기능이 있다. 상속을 아래와 같이 구현된다. >>> // 부모 클래스 >>> class Launch { >>> String menu; >>> >>> void setMenu(String menu) { >>> this.menu = menu; >>> } >>> } >>> >>> // 자식 클래스 >>> class Hamburger extends Launch { >>> void eatBurger() { >>> System.out.println("점심으로 " + menu + "먹었다."); >>> } >>> } 클래스 상속을 위해서 자식 클래스에 "extends 부모 클래스 이름" 키워드를 사용한다. 또한 부모 클래스에.. 자바 프로그래밍 - 메서드 메서드 클래스 내부에 있는 함수를 메서드라고 부른다. (다른 프로그래밍 언어에서는 함수와 메서드를 구분하지만 자바는 구분하지 않는다) 메서드의 관계를 가장 잘 나타낸 그림이다. 생과일 주스를 만들기 위해 과일을 믹서기에 넣고 주스를 만든다. 이 과정에서 과일은 입력값, 주스는 출력값이고 믹서가 바로 메서드라고 할 수 있다. 위의 코드에서 주석이 있는 부분이 바로 메서드이다. 사용하는 이유 코딩을 할 때 똑같은 내용을 반복할 때 메서드를 사용하면 편하다. 여러 번 반복한다는 것은 다시 사용할 만한 가치가 있는 부분이기에 이것을 메서드로 작성해 두면 활용하기가 편해진다. >>> public class sample { >>> >>> public static class SumAandB { >>> int a; >.. 자바 메인 클래스 public static void main(String[] args) 뜻 알기 전체 뜻 자바 프로그램의 시작 시점을 정의하는 메소드 시그니처로, 다른 클래스에서 호출 가능하고 클래스 수준에 속하며 아무 값도 반환하지 않는 "main"메소드를 정의한다. 단어 별 뜻 1. public 접근 제어자로, 이 메소드가 다른 클래스에서 접근이 가능하도록 하는 키워드이다. "public"으로 선언했다면 어떤 클래스에서도 호출할 수 있다. (접근 제어자 더 알기는 아래 더보기 확인) 더보기 객체 지향 프로그래밍 언어에서 접근 가능성과 가시성을 제어하는 키워드로 총 4가지가 있다. (1) public : 가장 개방적인 제어자로 어디에서든 접근 가능하도록 한다. (2) private : 가장 제한적인 제어자로 해당 클래스의 내부에서만 접근이 가능하다.(다른 클래스에서 직접 접근할 수 없다) (3) .. 자바 프로그래밍 - 클래스 클래스의 정의 >>> // 클래스 생성 >>> public static Class Launch { >>> } >>> // 객체 생성 >>> public class Sample { >>> public static void main(String[] args) { >>> Launch hamburger = new Launch(); >>> Launch noodle = new Launch(); >>> Launch porkCutlet = new Launch(); >>> ... >>> } >>> } 클래스는 객체를 정의하는 것으로 객체를 생성하기 위해 존재한다. 클래스와 객체를 설명할 때 보통 '빵틀'로 비유한다. 붕어빵 틀이 클래스, 붕어빵이 객체이다. 위에서도 보이듯 클래스인 launch를 메인 클래스에서 각각 햄.. 안드로이드 스튜디오(자바) - 로또 번호 생성 프로그램 문제 제시 자동으로 구매하는 로또는 당첨이 되지 않는 것 같아 오늘부터 수동으로 로또를 구매하려고 한다. 이를 편하게 하기 위해 로또 생성기를 직접 만들어 보기로 한다. (가상으로 설정한 상황입니다) 순서도 1. 새 번호를 생성한다. 2. 번호가 중복되는지 확인하고 중복이라면 삭제 한다. 3. 고유한 숫자 6개가 생성될 때 까지 반복한다. 주의할 부분 숫자가 중복되지 않도록 해야 한다. (로또는 중복이 존재하지 않는다) 코드 random으로 번호를 만들어줄 예정이므로 Random함수의 객체를 선언해 준다. 로또 번호를 표시해줄 테스트를 TextView를 통해 연결해준다. 리스트 num을 선언하고 크기는 6으로 선언한다. 랜덤한 수 6개를 for문을 통해 배열에 넣어준다. 이때 중복되는 값이 있다면 for.. 이전 1 다음