
6_3. 객체 _클래스 선언부
2022. 10. 26. 16:32
JAVA
1.클래스 선언 클래스 선언구문에 작성가능한 접근제한자(public , default(접근제한자 생략)) - public : 같은 패키지내에서든 다른 패키지에서든 해당 클래스 사용 가능 - default : 같은 패키지 내에서만 사용가능 (다른 패키지에서는 사용불가) 2. 클래스 다이어 그램 3. 클래스 예시 public class Product { private String pName; //productName private int price; private String brand; //기본생성자 public Product() { } //매개변수 생성자 public Product(String pName,int price,String brand) { this.pName = pName; this.price..
6_2 . 객체 캡슐화 (setter/getter)
2022. 10. 26. 16:20
JAVA
1. 캡슐화란 ? -추상화를 통해 정리된 데이터들과 기능을 하나로 묶어 관리하는 기법 -클래스의 가장 중요한 목적인 데이터의 접근제한을 원칙으로 하여 클래스 외부에서 데이터의 직접 접근을 막고, 대신 데이터를 처리하는 함수들을 클래스 내부에 작성하는 방법 >> 외부에서는 내부가 보이지 않으므로 정보은닉 효과가 발생 private (직접 접근을 막기위해 private라는 접근제한자 이용) 2. 캡슐화 원칙 - 클래스의 멤버 변수에 대한 접근 권한은 private을 원칙으로 한다. - 클래스의 멤버 변수에 대한 연산처리를 목적으로 하는 함수들을 클래스 내부에 작성한다. - 멤버 함수는 클래스 밖에서 접근할 수 있도록 public으로 설정한다. 1) 1.필드부 필드 == 멤버변수 == 인스턴스변수 [표현법] ..
6_1. 객체란
2022. 10. 26. 16:17
JAVA
1. 객체지향언어 : "객체"를 "지향"하는 언어 (객체 중심으로 돌아감) 2. 객체란? -사전적 정의 : 현실세계에 독립적으로 존재하는 모든것들 -자바에서의 정의 : 메모리 영역 중 Heap영역에 생성되는 모든것들 3. 객체지향 프로그래밍 : 현실 세계의 객체들간의 상호작용 프로그래밍을 통해 가상세계로 구현하는 과정 4. 프로그램상에 필요한 객체들을 만들기 위해서는 => 클래스라는 틀을 먼저 만들어야됨 (객체들의 속성값들을 담아낼 그릇같은 존재) => 추상화 + 캡슐화 접목해서 5. 추상화 과정 1) 내가 구현할 프로그램상에 필요한 객체들을 생각해보기 2) 그 객체들이 가지고 있는 공통적인 속성, 기능들을 모두 추출할 것 3) 추출한 것들을 가지고 내가 구현하고자하는 프로그램의 "실질적인 목적"에 맞춰..
5_2. 배열의 복사(ArrayCopy)
2022. 10. 25. 14:27
JAVA
1. 얕은 복사 ( 주소값을 복사) 1) 크기가 5인 배열 origin을 복사한다고 가정 int[] origin = {1, 2, 3, 4, 5}; int[] copy = origin; //주소값이 저장되어있음 , 같은 주소값을 참조하고있음 System.out.println("==복사본 배열 출력=="); for(int i=0;i> 출력결과 ==복사본 배열 출력== 1 2 3 4 5 2) 복사본의 값을 변경하면 원본배열의 값까지 변경됨 copy[2] = 99; System.out.println("----복사본 배열 값 변경 후----"); System.out.println("==원본 배열 출력=="); for(int i=0; i출력결과 ----복사본 배열 값 변경 후----| ==원본 배열 출력== 1 2..
5. 배열 Array
2022. 10. 24. 16:11
JAVA
1. 배열 하나의 공간에 여러개의 값을 담을 수 있음 단, "같은 자료형"의 값으로만 담을 수 있음. 1) 배열을 안썼을 경우 -변수 라는 것만 이용하게 되면 => 대량의 데이터들을 보관하고자 할 경우 각각의 변수를 만들어 따로 관리 int num1 = 0; int num2 = 1; int num3 = 2; int num4 = 3; int num5 = 4; -출력시에도 일일이 출력해야함(반복문 활용 불가) for(int i=1; i 그 갯수만큼의 방이 만들어짐) * 배열명 = new 자료형[배열크기]; ex) arr = new int[5]; ** 배열 선언과 동시에 할당 ** ex) int[] arr = new int[5]; 3. 값 대입 (배열의 특정인덱스에 값을 대입) * 배열명[인덱스] = 값; e..
4_5. 제어문_ 분기문 continue
2022. 10. 21. 16:50
JAVA
continue; :반복문 안에서 기술되는 구문 * continue;구문 실행시 그 뒤의 구문들 실행되지 않고 곧바로 현재 속해있는 반복문 위로 올라감 - Continue문 사용 예시 1) 1에서 부터 10까지 홀수 출력 public void method1() { for(int i = 1; i
4_5. 제어문_ 분기문 break
2022. 10. 21. 16:49
JAVA
break; : 반복문안에 사용되는 분기문 - break; 이 실행되는 순간 현재 속해있는 반복문을 빠져나감 * *유의사항 : switch문 안에서의 break;는 오로지 switch문 만을 빠져나감 반복문() { switch(){ break; // switch문 만을 빠져나감 -> 반복문은 계속 실행 } } 1. break 문 사용 예시 1) 사용자에게 문자열을 입력받아 해당 그 문자열의 길이 출력(매번 반복) 단, 사용자가 입력한 문자열이 "exit"인 경우 반복문을 빠져나감 public void method1() { Scanner sc = new Scanner(System.in); String str = ""; while(true) { System.out.print("문자열 입력(종료하고자 한다면 ..
4_4. 제어문 _ 반복문 while, do-while
2022. 10. 21. 16:48
JAVA
* *while문 [초기식;] while(조건식){ // 반복을 수행시킬 조건만을 작성 반복적으로 실행할 코드 ; [증감식]; } 1. for문을 while문으로 바꾸기 1) 안녕하세요 5번 반복출력 public void method1() { //for문 사용시 for(int i=1; i
4_3 제어문 _반복문 for문
2022. 10. 20. 14:51
JAVA
- 반복문 * 특정 코드를 반복적으로 수행시켜줌 * 크게 두 종류로 나뉨 (for문 / while문(do-while문) ) 1. for문 [표현법] for(초기식; 조건식; 증감식) { //반복 횟수를 지정하기 위해 제시하는 것들 반복적으로 실행시키고자하는 코드 } - 초기식 : 반복문이 수행될 때 "처음에 단 한번만" 실행되는 구문 (보통 반복문 안에서 사용될 변수를 선언과 동시에 초기화하는 구문) - 조건식 : "반복문이 수행될 조건"을 작성하는 구문 조건식이 true일 경우 해당 구문을 실행 조건식이 false일 경우 반복을 멈추고 빠져나감 (보통 초기식에 제시된 변수를 가지고 조건식을 작성) - 증감식 : 반복문을 제어하는 변수 값을 증가 또는 감소 시키는 구문 (보통 초기식에 제시된 변수를 가지..
4_2. 제어문 _ 조건문 switch
2022. 10. 18. 16:23
JAVA
switch 조건문 - if 문과 "차이점"이라면? > if문 안의 조건식은 자유롭게 기술 가능 (범위에 대한 조건, 동등비교 등등) -switch문은 동등비교만 가능 (동등비교할 값들만 작성) > 실행할 구문만 실행하고 자동으로 빠져나오질 못함! (직접 break;문 작성해야함) [표현법] switch(동등비교할 대상자){ case 값1 : 실행코드1; break; case 값2 : 실행코드2; break; ... * [default : 위의 값들과 모두 일치하지않을 경우 실행코드; (else와 비슷)] } 예시) 1. 정수를 입력받아 1일 경우 "빨간색입니다." 2일 경우 "파란색입니다." 3일 경우 "초록색입니다." 그외의 값 입력했을경우 "잘못입력하셨습니다."를 출력하기 - if 문 사용경우 pu..