Java 57

[김영한_자바기본][1.클래스와 데이터] (보충) 클래스 도입/객체 사용/ 배열 도입 (p.16-34)

▶ 클래스 도입, 객체 이해하기 https://zoooom-in.tistory.com/43 [김영한_자바기본][1.클래스와 데이터] 클래스 도입, 객체 이해하기(인스턴스) (p.15-23) Class는 설계도로, 객체(인스턴스)는 설계도를 구현한 설계툴로 보자 정보 참조는 설계툴을 통해 이루어지며, 입력 전까지는 설계툴에는 원본(설계도면) 위치만 뜬다. [코드 읽기 전, 이해 도모를 zoooom-in.tistory.com 1. 클래스 도입 [p.15 / Student 클래스] public class Student { //필드 == 멤버변수 String name; int age; int grade; } [p.16 / ClassStart3] Student 클래스(설계도) 를 통해 'Student라는 타입/형..

[김영한_자바기본][2.기본형과 참조형] 기본형 / 참조형 이해 (p.1-6)

참조값에 접근한다는 것은 설계도와 부지 위치에 접근해서 같이 공동 작업을 하는 것이다. 기본형은 실제 값이 저장되어 독립적으로 관리되지만, 참조형은 변수에는 객체 위치(참조값)가 저장되어 여러 변수가 동일한 객체를 참조할 수 있다. * 기본값 (원시 자료형): 변수에는 실제 값이 직접 저장되며, 각 변수는 독립적으로 값을 가지고 있다. * 참조값 (참조 자료형): 변수에는 객체의 위치(참조값)가 저장되며, 여러 변수가 동일한 객체를 참조할 수 있다. [이해 도모를 위한 코드 예시 : 참조값 대입 이해하기] public class BuildingExample { public static void main(String[] args) { // 건물을 쌓아올리기 위한 건물 부지 위치(참조)를 나타내는 참조값 X..

[김영한_자바입문][8.배열] 배열의 선언과 생성 이해하기 (p.2-7)

배열 선언은 아파트 부지 확보, 생성은 몇 개의 아파트를 확보할 것인지배열의 값 할당은 부지를 참조해 실제 준공일을 기입한다. 할당 전까지는 부지 주소만 참조되어 나타난다.[코드 읽기 전, 이해 도모를 위한 예시]1. 배열 선언 및 초기화 == 아파트 및 부지 확보 └─ 아파트 및 부지를 확보한다는 것은 배열을 선언하고 초기화하는 것과 유사하다. └─ int[] apart = new int[5];에서 new int[5]는 아파트와 아파트 부지를 5곳 확보하는 것이다.2. 값 할당 == 준공 시작일 └─ 준공 시작일은 각 '아파트 부지를 참조하여' 자재를 올리기 시작하는 날짜로 비유된다. └─ apart[0] = 1;과 아파트에 값을 할당하는 것은 준공을 시작한 것으로 이해할 수..

[김영한_자바기본][1.클래스와 데이터] 클래스 도입, 객체 이해하기(인스턴스) (p.15-23)

Class는 설계도로, 객체(인스턴스)는 설계도를 구현한 설계툴로 보자 정보 참조는 설계툴을 통해 이루어지며, 입력 전까지는 설계툴에는 원본(설계도면) 위치만 뜬다. [코드 읽기 전, 이해 도모를 위한 예시] 1. Class == 설계도 └─ Student 클래스 선언 후, 타입으로 사용 └─ 이름, 나이, 성적 데이터를 담은 설계도 2. 객체(인스턴스) == 설계도 └─ 클래스의 인스턴스 생성 // 설계도를 구현한 설계툴 └─ Student students = new Student(); 3. 정보 참조와 입력 전 설계툴 └─ 설계툴을 이용해 데이터 입력 전까지 설계툴에는 설계도 원본 위치만 뜸(어떤 설계도를 참조했는지) └─ 설계툴을 이용해 설계도면을 참조하여 접근 가능 ↓ 구 현 ↓ [p.15] Cl..

[김영한_자바입문][7. 훈련] While_if / switch구문, break / continue (p.23)

1. (while) if-break, switch-break의 쓰임은 다르다. 2. while내 switch-break를 사용할 때, 빠져나가려면 'return / exit'를 사용해라 3. if / else if / else 구문에서 원하는 흐름이 구현되었다면 continue를 사용할 필요 없다. [p.23 / While_if 사용] break : while 구문에서 주로 사용되며, 실행 후 빠져나가는 역할 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int sum = 0; while (true) { System.out.println("1.상품입력 | 2.결제 | 3. 프로그램 종료"); int op..

[김영한_자바입문][7. 훈련] While_단독 if문 사용 / else 사용 로직 접근 (p.9)

입력 값이 무한 반복에 제한을 걸 상황은 'while'과 'if - break'를 사용해 코드 확인을 최소화하고 단순 제한이 있는 상황은 'if'와 'else'로 나누어 코드 확인을 최소화한다. [if / break 구분] 제한이 없는 무한 반복의 상황, 특정값 출력이 최소화인 상황(0을 출력하는 확률이 매우 적음) public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int sum = 0; while (true) { System.out.println("정수를 입력하세요 (0을 입력하면 종료) : "); int number = scanner.nextInt(); if (number == 0) { break; } ..

[김영한_자바입문][5. 반복문] break / continue 접근 (p.14-15)

break는 반복문을 완전히 종료하고 반복문 밖으로 나가며, continue는 현재 반복을 중단하고 반복문의 처음으로 돌아간다. 또한, 흔히 while 문에서 특정 조건(If구문)을 만족할 때 반복을 종료/재실행한다. [p.14 / break] break는 while 구문 내에서 해당되는 조건을 수행하고 순환을 멈추며 while 밖으로 바로 빠진다. public static void main(String[] args) { int i = 1; int sum = 0; //언제까지 반복할지 모르기 때문에 for구문보다 while문을 사용하는게 더 적절하다고 판단 while (true) { sum += i; if (sum > 10) { System.out.println("현재 i = " + i + ", 현재 s..

[김영한_자바입문][4. 함수] if / else if문 활용 문제 접근 (p.17-19, p.21)

코드를 작성할 때는 각 조건의 범위를 정확히 고려하여, 다양한 조건이 서로 겹치지 않도록 주의해야 한다. [p.17 / 문제1. IF1] 머리속으로 그리기 > 90↑ : A / 80~'90' : B / 70~'80' : C public static void main(String[] args) { int score = 55; if (score >= 90) { System.out.println("학점은 A 입니다."); } else if (score >= 80) { System.out.println("학점은 B 입니다."); } else if (score >= 70) { System.out.println("학점은 C 입니다."); } else if (score >= 60) { System.out.printl..

[김영한_자바입문][4. 함수] if문 활용 삼항연산자 (p.15-16)

'A아니면 B다' 라는 결과 값을 도출할 때 삼항 연산자를 사용하는 것이 유용하다. [p.15 / 단순 if문 작성] public static void main(String[] args) { int age = 18; String status; if (age >= 18) { status = "성인"; } else { status = "미성년자"; } System.out.println("age = " + age + ", status = " + status); } * 가독성: 일반적으로 복잡한 조건을 처리할 때 가독성이 높다. * 다양성: 여러 조건을 처리하거나, 특정 조건에 따라 다양한 동작을 수행해야 할 때 유용하다. * 문장이 복잡할 때: 조건에 따라 수행할 동작이 여러 줄로 이루어져야 할 때 if문이 ..

[김영한_자바입문][4. 함수] if / switch 사용 이해하기(p.11-12)

요약하면, if-else 문은 다양한 조건을 처리하는 데 유연하고, switch 문은 옵션 출력 처럼 변수의 값에 따라 여러 경우 중 하나를 선택하는 경우 효과적이고, switch 표현식은 특히 값 할당과 관련된 간단한 로직에서 간결하고 표현력 있는 방법을 제공한다. [if문 사용 특징] 범위 기반 조건 검사, 복잡한 조건(여러 조건 동시 진행) public static void main(String[] args) { int score = 85; if (score >= 90) { // A grade } else if (score >= 80) { // B grade } else if (score >= 70) { // C grade } else { // Below C grade } } * 용도: if 문은 ..