JAVA
-
이것이 자바다 | 6장 클래스JAVA/이것이 자바다 2022. 6. 27. 18:29
6.1 객체 지향 프로그래밍 속성 - 필드 동작 - 메소드 현실 세계의 객체를 소프트웨어 객체로 설계하는 것 -> 모델링 객체 모델링: 현실 세계 객체의 속성과 동작을 추려내어 소프트웨어 객체의 필드와 메소드로 정의하는 과정 메소드: 객체들 사이의 상호작용 수단 메소드 호출: 객체가 다른 객체의 기능을 이용하는 것 ex) 리턴값 = 전자계산기객체.메소드(매개값1, 매개값2, ...); 캡슐화 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감추는 것 상속 상위 객체가 하위 객체에게 필드와 메소드를 물려주어 하위 객체가 사용할 수 있도록 하는 것 다형성 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질 6.2 객체와 클래스 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 함 클..
-
이것이 자바다 | 5장 확인문제 9번JAVA/이것이 자바다 2022. 6. 27. 16:30
package chap05; import java.util.Scanner; // 키보드로부터 학생 수와 각 학생들의 점수를 입력받아서, 최고 덤수 및 평균 점수를 구하는 프로그램 public class Exercise09 { public static void main(String[] args) { boolean run = true; int studentNum = 0; int[] scores = null; Scanner scanner = new Scanner(System.in); while (run) { System.out.println("______________________________________________"); System.out.println("1.학생수 | 2.점수입력 | 3.점수리스트..
-
이것이 자바다 | 5강_열거 객체의 메소드JAVA/이것이 자바다 2022. 6. 27. 15:19
name() 열거 객체가 가지고 있는 문자열 리턴 Week today = Week.Sunday; String name = today.name // name에는 SUNDAY가 저장됨 ordinal() 전체 열거 객체 중 몇 번째 열거 객체인지 알려줌 Week today = Week.SUNDAY; int ordinal = today.ordinal(); // ordinal에는 6이 저장됨 compareTo() 매개값으로 주어진 열거 객체를 기준으로 전후로 몇 번째 위치하는지 비교 *만약 열거 객체가 매개값의 열거 객체보다 순번이 빠르다면 음수, 순번이 늦으면 양수가 리턴됨 Week day1 = Week.MONDAY; Week day2 = Week.WEDNESDAY; int result1 = day1.compa..
-
이것이 자바다 | 5강_참조타입JAVA/이것이 자바다 2022. 1. 25. 01:15
1. 자바의 데이터 타입 기본타입 정수타입 실수타입 논리타입(boolean) 참조타입 배열타입 열거타입 클래스 인터페이스 기본타입과 참조타입의 차이점 기본타입: 실제 값을 변수에 저장 참조타입: 메모리의 번지를 값으로 가짐 2. 메모리 사용 영역 메소드 영역 JVM이 시작할 때 생성되고 모든 스레드가 공유하는 영역 힙 영역 객체와 배열이 생성되는 영역 해당 영역에 생성되는 객체와 배열이 참조하는 변수나 필드가 없다면 의미 없는 객체가 되므로 이것을 쓰레기 취급하고 JVM이 쓰레기 수집기를 실행시켜 쓰레기 객체를 자동 제거한다. JVM 스택 영역 각 스레드마다 하나씩 존재하며 스레드가 시작될 때 할당됨 메소드를 호출할 때마다 프레임을 추가하고 메소드가 종료되면 해당 프레임을 제거한다. 3. NullPoin..
-
이것이 자바다 | 4강_조건문과 반복문JAVA/이것이 자바다 2022. 1. 17. 16:51
중첩 if문 package chap04; public class IfNestedExample { public static void main(String[] args) { int score = (int)(Math.random()*20) + 81; System.out.println("점수: " + score); String grade; if(score>=90) { if(score>=95) { grade = "A+"; } else { grade = "A"; } } else { if(score>=85) { grade = "B+"; } else { grade = "B"; } } System.out.println("학점: " + grade); } } String 타입의 Switch문 package chap04; p..
-
이것이 자바다 | 3강_연산자JAVA/이것이 자바다 2022. 1. 13. 17:55
연산자 대부분의 연산자: 왼쪽에서 오른쪽 단항 연산자, 부호 연산자, 대입 연산자: 오른쪽에서 왼쪽 연산자 우선순위 단항>이항>삼항 연산자 산술>비교>논리>대입 연산자 -short타입 값을 부호 연산하면 int타입으로 됨 short s = 100; short result = -s;//컴파일 에러 -올바르게 고친 코드 short s = 100; int result = -s; 증감 연산자 package chap03; public class chap03_1 { public static void main(String[] args) { int x = -100; int result1 = +x; int result2 = -x; System.out.println("result1 =" + result1); System...
-
이것이 자바다 | 2강_변수와 타입JAVA/이것이 자바다 2022. 1. 9. 01:07
변수 첫 번째 글자는 문자이거나 '$','_'이어야 하고 숫자로 시작할 수 없다. 실수 리터럴 소수점이 있는 리터럴은 10진수 실수로 간주한다. E나 e가 있는 리터럴은 10진수 지수와 가수로 간주하다. (ex. 0.12E-5 = 0.12 x 10^-5) package chap02; public class chap02_1 { //클래스 블록 public static void main(String[] args) { //메소드 블록 //10을 변수 value의 초기값으로 저장 int value = 10; //변수 value 값을 읽고 10을 더하는 산술 연산을 수행 //연산의 결과값을 변수 result의 초기값으로 저장 int result = value + 10; //변수 result 값을 읽고 콘솔에 출력..