no image
java↗7-8. 메서드란? 메서드의 선언부와 구현부
메서드란? 1. 문장들을 묶어놓은 것. {} - 작업단위로 문장들의 묶어서 이름 붙인 것 2. 값(입력)을 받아서 처리하고, 결과를 반환(출력) - 객체지향개념안에 있는 함수 그것을 메서드라고 한다.(함수는 클래스에 독립적) (println이 어떻게 동작하는지 모르듯이 메서드를 블랙박스라고도 한다) 메서드의 장점 - 코드의 중복을 줄일 수 있다. - 코드의 관리가 쉽다. - 코드를 재사용할 수 있다. - 코드가 간결해서 이해하기 쉬워진다. 매개변수(입력) 개수는 0~n개 메서드 출력은 0~1개{배열이나 객체(여러개의 변수)로 해결한다}
2024.03.25
no image
java↗7-7. 클래스 변수와 인스턴스 변수
선언위치에 따른 종류 영역 1. 클래스 영역 : iv(instance variable), cv(class variable) 2. 메서드 영역 : lv(local variable)무늬와 숫자같이 카드마다 개별적으로 달라야 하는 것은 인스턴스 변수(iv)를 사용한다.(개별 속성) 폭, 높이와 같이 카드마다 개별적으로 같아야 하는 것은 클래스 변수(cv)를 사용한다.(공통 속성)class Ex6_3Ex { public static void main(String args[]) { System.out.println("Card.width = " + Card.width); System.out.println("Card.height = " + Card.height); Card c1 = new Card(); c1.kind..
2024.03.25
no image
java↗7-6. 선언위치 변수종류
class Variables // 클래스영역 (instance variable) { int iv;// 인스턴스 변수 static int cv; // 클래스 변수(static변수, 공유변수) void method() // 메서드영역 { int lv = 0; // 지역변수 (local variable) } }// 클래스영역의 끝 1. 선언문만 가능하다. (X - y=x+3 , System.out.pritln()) (O - 변수선언 int iv; static int cv; , 메서드선언(메서드정의)) 2. 선언문의 순서는 상관없다.(메서드선언과 변수선언 순서 상관없음, 보통 변수선언->메서드선언이 일반적) cv = 객체생성x (아무때나 사용가능하다) iv = 객체생성o (객체생성을 해야 사용가능하다), 메서드..
2024.03.25
no image
java↗7-5. 클래스의 정의
클래스의 정의 (1) 클래스 == 데이터 + 함수 클래스 : 1. 설계도 2. 데이터 + 함수 3. 사용자 정의 타입 1. 변수 : 하나의 데이터를 저장할 수 있는 공간 2. 배열 : 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간 3. 구조체 : 서로 관련된 여러 데이터(종류 관계X)를 하나로 저장할 수 있는 공간 4. 클래스 : 데이터와 함수의 결합(구조체 + 함수) 클래스의 정의(2) 사용자 정의 타입 - 원하는 타입을 직접 만들 수 있다. 시간을 다루기 위한 클래스를 생성(기본형은 8개뿐이다) int hour; int minute; int second; int hour1, hour2, hour3; int minute1, minute2, minute3; int second1, second2,..
2024.03.24
no image
java↗7-4. 객체 배열
객체 배열 == 참조변수 배열
2024.03.24
no image
java↗7-3. 객체의 생성과 사용
두 문장을 하나로 줄이면 Tv t = new Tv();로 쓸 수 있다. 1. 클래스 생성(설계도) 2. 객체 생성(제품) 3. 객체 사용(변수,메서드 사용) class Ex6_1 { public static void main(String args[]) { Tv t; // Tv인스턴스를 참조하기 위한 변수 t를 선언 t = new Tv(); // Tv인스턴스를 생성한다. t.color = "레드"; // Tv인스턴스의 멤버변수 color의 값을 레드로 한다. t.channel = 7; // Tv인스턴스의 멤버변수 channel의 값을 7로 한다. t.channelDown(); // Tv인스턴스의 메서드 channelDown()을 호출한다. System.out.println("현재 채널은 " + t.chan..
2024.03.24
no image
java↗7-2. 한파일 여러 클래스 작성하기
// 하나의 소스파일에는 하나의 클래스만 작정하는 것이 바람직하다 public class Hello2 { // 소스파일의 이름은 public class이름과 일치 } // 하나의 소스파일에는 하나의 public class만 허용 class Hello3 { } class Hello4 { }
2024.03.24
java↗7. 객체지향 언어(공부순서)
객체지향 언어 (절차적 -> 객체지향) 코드의 재사용성이 높고 유지보수가 용이, 중복 코드 제거 객체지향 언어 = 프로그래밍 언어 + 객체지향개념(규칙) oop(object - oriented programming) 1. 캡슐화 2. 상속 3. 추상화 4. 다형성 (객체지향 개념 공부는 6장,7장(다형성)을 번갈아 가면서 복습한다) 번갈아 봤으면 규칙을 요약하고, 규칙 요약집을 하루에 한 번씩 본다. 순서 : 자바의 정석 -> 웹(JSP, Spring), 앱(안드로이드) 개발을 실습위주로 해본다.
2024.03.22
no image
java↗6-8. Arrays로 배열 다루기
1차원 배열은 toString, equals를 사용한다. 2차원 배열은 앞에 deep을 붙여 사용한다. import java.util.Arrays; class Ex5_3_int { public static void main(String[] args) { int[] arr = {0,4,1,2,3}; // 1차원 배열 arr Arrays.sort(arr); // 배열 arr을 오름차순으로 정렬 int[][] arr2D = {{11,12},{21,22}}; // 2차원 배열 arr2D System.out.println(Arrays.toString(arr)); // [0, 1, 2, 3, 4] System.out.println(Arrays.deepToString(arr2D)); // 2차원 배열 출력할 때 [[..
2024.03.22