자바 77

Return 문, 반환값

return 문 실행 중인 메서드를 종료하고 호출한 곳으로 되돌아간다. void printGugudan (ing dan) { if ( !(2 조건문이 참일때는 return 이 있으나 거짓인 경우에 return문이 없음 그래서 else를 추가해 거짓을 때 실행 하는 것을 넣어주어야함 구구단 메서드 만들어서 출력해보기 class Ex6_4 { public static void main(String args[]) { MyMath mm = new MyMath(); mm.printGugudan(3); // 구구단 3단을 출력 } } class MyMath { void printGugudan (int dan) { for (int i=1; i b) { return a; // 조건식이 참일때만 실행 } else{ re..

메서드 호출

메서드의 호출 메서드 호출하는 방법 - 메서드이름 (값1, 값2, ... ); // 괄호 안에는 '작업에 필요한 값들' 적어주면 됨 메서드 호출 예 - print99danAll() // void print99danAll() 을 호출 (별다른 입력값 없이 호출 가능) - int result = add(3,5); // int add(int x, int y)를 호출하고, 결과를 result에 저장 예제) class Ex6_4 { public static void main(String args[]) { MyMath mm = new MyMath(); long result1 = mm.add(5L, 3L); long result2 = mm.subtract(5L, 3L); long result3 = mm.multipl..

메서드란? / 메서드의 선언부와 구현부

메서드란? (=; 함수) 메서드 함수 클래스 안에 있어야 함 클래스에 독립적임 1. 문장들을 묶어놓은 것. (작업단위로) - 작업단위로 문장들을 묶어서 이름을 붙인 것 > 작업의 이름을 붙여준것 : 메서드 > printArr(numArr); // 배열을 출력; 메서드호출 (사용) >> 똑같은 작업을 하는 두 그룹을 메서드로 묶은 뒤 메서드 호출을 해줌 2. 값(입력)을 받아서 처리하고, 결과를 반환(출력) > 메서드의 장점 - 코드의 중복을 줄일 수 있다. - 코드의 관리가 쉽다. - 코드를 재사용할 수 있다. - 코드가 간결해서 이해하기 쉬워진다. ( 중복 코드 제거, 관리 용이, 재사용 가능 ) > 메서드의 작성 - 반복적으로 수행되는 여러 문장을 메서드로 작성 - 하나의 메서드는 한 가지 기능만 수..

선언 위치에 따른 변수의 종류 / 클래스 변수와 인스턴스 변수

선언 위치에 따른 변수의 종류 Class Variables { -> 클래스 시작 int iv; // 인스턴스 변수 (instance variable) > 1. 클래스 영역 (선언문만 가능) static int cv; // 클래스 변수 (static 변수, 공유 변수) void method() { -> 메서드 시작 int Lv = 0; // 지역 변수(local variable) 메서드 끝 } -> 클래스 끝 영역 1. 클래스 영역 1) iv 2) cv (= static + iv) 2. 메서드 영역 1) Lv ☆ 객체 = iv를 묶어 놓은 것. 클래스 변수(cv)와 인스턴스 변수(iv) 선언위치 영역 - 클래스 영역 : iv, cv - 메서드 영역 : lv 카드 중 공통적으로 유지되어야하는 값에 stati..

클래스의 정의

클래스의 정의 (1) 클래스를 세가지로 정의할 수 있음 ( 1.설계도 2.데이터+함수 3.사용자 정의 타입) 클래스 == 데이터 + 함수 1. 변수 하나의 데이터를 저장할 수 있는 공간 2. 배열 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간 3. 구조체 서로 관련된 여러 데이터 (종류 관계X)를 하나로 저장할 수 있는 공간 4. 클래스 데이터와 함수의 결합 (구조체 + 함수) (함수=메서드, 명령문 묶음) 클래스의 정의 (2) 사용자 정의 타입 - 원하는 타입을 직접 만들 수 있다. ex) 12시 34분 56초를 저장하고 싶다면? 왼쪽 : 비객체지향적인 코드 우측 : 객체지향적인 코드 객체지향적 코드를 생성하면 장점이 많아짐 1. 서로 관련된 값들을 강하게 묶을 수 있음 2. 코드가 덜 복잡해..

객체의 생성과 사용

객체의 생성과 사용 1. 객체의 생성 클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수를 선언 변수명 = new 클래스명(); // 클래스의 객체를 생성 후, 객체의 주소를 참조변수에 자정 TV t;// TV 클래스 타입의 참조변수 t를 선언 t = new TV(); // TV 인스턴스를 생성한 후, 생성된 TV인스턴스의 주소를 t에 저장 -> 간편하게 하나의 코드로 작성 가능 TV t = new TV(); -> TV 객체를 생성 2. 객체의 사용 t.channel1 = 7; // TV 인스턴스의 멤버변수 channel의 값을 7로 한다. t.channelDown(); // TV 인스턴스의 메서드 channelDown()을 호출한다. System.out.println(:현재 채널은 " + t..

객체지향 언어 / 클래스와 객체

'80년 초 소프트웨어의 위기 - 빠른 변화를 못쫓아감 -> 해결책으로 객체지향 언어를 도입 (절차적 -> 객체지향) (1960 simula 언어) / 절차적 : 순서대로 실행 코드의 재사용성이 높고 유지보수가 용이, 중복 코드 제거 객체지향 언어 = 프로그래밍 언어 + 객체지향개념 (규칙) 객체지향 언어의 핵심 개념 : OOP (Object-Oriented Programming) 1. 캡슐화 2. 상속 3. 추상화 4. 다형성 클래스와 객체 클래스의 정의 클래스란 객체를 정의해 놓은 것 클래스의 용도 클래스는 객체를 생성하는데 사용 객체의 정의 실제로 존재하는 것, 사물 또는 개념 객체의 용도 객체가 가지고 있는 기능과 속성에 따라 다름 클래스 객체 제품 설계도 제품 TV 설계도 TV 붕어빵 기계 붕어..

Arrays로 배열 다루기

Arrays로 배열 다루기 (Arrays = 클래스) 배열의 비교와 출력 - equals(), toString() > toString : 1차원 사용 / deepToString : 2차원 사용 > equals : 1차원 배열에 사용 / deppEquals : 2차원, 다차원에 사용 배열의 복사 - copyOf(), copyOfRange() 배열의 정렬 - sort() ( 오름차순 정렬 ) int[] arr = {3,2,0,1,4}; Arrays.sort(arr); // 배열 arr을 정렬한다. System.out.println(Arrays.toString(arr)); // [0,1,2,3,4]