분류 전체보기

    [자바/JAVA] 프로그래밍 - 클래스(Class)

    예제) 아래의 클래스 다이어그램을 보고 클래스를 작성하세요. Product Class package com.kh.chap03_class.model.vo; public class Product { // 클래스 선언 구문에 작성가능한 접근제한자 (public, default) // default 라고 쓰는게 아니고 접근제한자를 지우면 default가 되는거임 // default로 하면 같은 패키지 내에서만 사용가능 / 다른 패키지에서는 해당 파일 사용 불가 => 못찾음 /* * * 필드(field) * * 필드 == 멤버변수 == 인스턴스 변수 * * [표현법] * 접근제한자 [예약어] 자료형 변수명; */ private String pName; private int price; private String ..

    [자바/JAVA] 프로그래밍 - 클래스(Class) 2.캡슐화

    7. 캡슐화 과정까지 적용해서 완벽한 클래스의 형태를 갖추게함!! 캡슐화 : 추상화를 통해 정의된 속성들과 기능들을 하나로 묶어 관리하는 기법중 하나로 클래스에서 가장 중요한 목적인 "데이터의 접근 제한" 을 원칙으로 외부로부터 "데이터의 직접 접근"을 막고 대신에 "데이터를 간접적으로나마 처리(값을 대입, 값을 돌려준다거나)" 할 메소드를 클래스 내부에 작성해서 관리 1) 정보은닉 : private 직접접근을 막기위해 private 라는 접근제한자 사용 2) setter / getter 메소드 만들어야함!! private 하는 순간 필드에 직접접근 불가!! setter 메소드 : 해당 필드에 대입시키고자 하는 값 전달받아서 해당 필드에 대입시켜주는 메소드 getter 메소드 : 해당 필드에 담긴값을 반..

    [자바/JAVA] 프로그래밍 - 클래스(Class) 1.추상화

    1. 객체지향언어 : "객체"를 "지향"하는 "언어"로 "객체 중심"으로 돌아간다고 생각하면 됨. *지양 => 좋지 않음 *지향 => 좋음 (추구한다.) 2. 객체 : 현실세계에 독립적으로 존재(목적이 있고 가치가 있고 의미가 있는)하는 모든 것들을 의미 (유형, 무형, 개념, ...) 현실세계에서는 객체들간의 상호작용으로 돌아감 (내가 물을 먹는다) 3. 객체지향 프로그래밍 : 현실세계의 객체들간의 상호작용 프로그래밍을 통해 가상세계로 구현하는 것 (내가 쇼핑몰에서 로그인 한다) 4. 구현하고자 하는 프로그램상의 필요한 객체들을 만들기 위해서(즉, 생성하기 위해서) : 클래스라는 틀을 먼저 만들어야됨!! (클래스란? 각 객체들의 속성(정보)들을 담아낼 그릇 같은 존재) => 이름,나이,주소,휴대폰번호 ..

    [자바/JAVA] 프로그래밍 - 배열(Array) 실습 예제

    배열(Array) 예제 문제 01. 길이가 10인 배열을 선언하고 1부터 10까지의 값을 반복문을 이용하여 순서대로 배열 인덱스에 넣은 후 그 값을 출력하세요. ex. 1 2 3 4 5 6 7 8 9 10 public void practice1() { int[] arr = new int[10]; for(int i = 0; i < arr.length; i++) { arr[i] = i + 1; } for(int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } 문제 02. 길이가 10인 배열을 선언하고 1부터 10까지의 값을 반복문을 이용하여 역순으로 배열 인덱스에 넣은 후 그 값을 출력하세요. ex. 10 9 8 7 6 5 4 3 2 1 ..

    [자바/JAVA] 프로그래밍 - 버블정렬 (Bubble Sort)

    버블정렬(Bubble Sort) 인접한 원소끼리 대소를 비교하여 조건에 맞지 않다면 두 원소의 자리를 바꿔서 정렬해주는 것 {22, 99, 30, 68, 87, 1, 13} 을 버블정렬을 이용하여 오름차순 정렬하기 JAVA code public static void main(String[] args) { int[] arr = {22,99,30,68,87,1,13}; // 임시 변수 => temp int temp = 0; for(int i = 0; i arr[j]) {// 앞에 숫자가 뒤에 숫자보다 큰 경우 temp = arr[j -1];// 앞..

    [자바/JAVA] 프로그래밍 - 배열복사 (Array copy)

    int[] origin = {1,2,3,4,5}; System.out.println("== 원본 배열 출력 =="); for(int i = 0; i < origin.length; i++) { System.out.print(origin[i]+ " "); } System.out.println(); // 단순하게 origin을 다시 대입시킨 copy 배열 셋팅 int[] copy = origin; System.out.println("== 복사본 배열 출력 =="); for(int i = 0; i < copy.length; i++) { System.out.print(copy[i] + " "); } System.out.println(); 컴파일 하지만 복사본의 배열 값을 변경 한다면? int[] origin = ..

    [자바/JAVA] 프로그래밍 - 배열 (Array)

    변수 : 하나의 공간에 하나의 값을 담을 수 있음 배열 : 하나의 공간에 여러개의 값을 담을 수 있는 개념 "같은 자료형의 값" 으로만 담을 수 있음 정확히 얘기하자면 배열의 각 인덱스 자리에 실제값이 담김 (인덱스는 0부터 시작!!) 왜 배열을 쓸까? 변수라는 것만을 이용하게 되면 대량의 데이들을 보관하고자 할 때 각각의 변수를 만들어서 따로 관리해야되는 불편함이 있다. int num1 = 0,1,2,3,4; //=> 하나의 변수에 여러개의 값을 동시에 넣을 수 없다. 따라서 아래의 방식을 사용해야된다. int num1 = 0; int num2 = 1; int num3 = 2; int num4 = 3; int num5 = 4; 출력하고자 할때도 일일히 출력해야됨(반복문 활용 불가) System.out...

    [자바/JAVA] 프로그래밍 - 제어문 - (분기문 break,continue)

    break; : 반복문 안에 사용 되는 분기문 break;가 실행되는 순간 현재 속해있는 반복문을 강제로 빠져나감 *유의 사항 : switch문 안의 break;는 단지 switch문만을 빠져나가는 구문 예제1 랜덤값(1~199) 발생시키고 그 랜덤값 출력 (이 과정 매번 반복 => 무한반복) 단, 발생된 랜덤값이 3의 배수 일 경우 (3으로 나눴을때 나머지가 0일 경우) 반복문을 빠져나와보자 while(true) {// 무한반복 int random = (int)(Math.random() *200 + 1); System.out.println("random 값 : " + random); if(random % 3 == 0) {// 3의 배수 break;// 반복문을 강제로 빠져나가게 하는 구문 } } 예제2..