본문 바로가기

반응형

6개월 대장정/JAVA 개념

(39)
10일차 - 상속, 오버라이딩 안녕하세요. pitang입니다. 저번에 살짝 스포를 했는데 상속과 오버 라이딩을 알아봅시다! 상속(Inheritance) 객체지향 프로그램에서 상속은 기존의 클래스를 확장하여 새로운 클래스를 이끌어내는 것을 의미한다. 상속의 목적은 코드를 재사용하는 것이다. 단일 상속만을 지원하며, 상속을 받아 만들어지면 새롭게 만들어진 클래스를 자식(child of sub) 클래스, 멤버 변수와 메서드를 물려준 클래스는 부모(parent or super) 클래스라고 부른다. 상속을 하면 부모 클래스의 멤버 변수와 메서드가 자식 클래스에 상속이 된다. 하지만, 생성자는 상속이 되지 않는다. 일반화된 클래스는 부모 클래스, 구체화된 클래스는 자식 클래스라고 생각하면 된다. 상속을 사용하는 키워드는 extends 부모 클래..
10일차 - Garbage Collecting, 패키지(package), 데이터 타입 안녕하세요. pitang입니다. 오늘 배운 내용이 참 많은데 어떻게 정리해야 할지 감이 잘 안 와요ㅠ 하나하나 천천히 알아가 볼게요. Garbage Collecting Garbage Collecting 은 말 그대로 쓰레기 수집기이다. 크게 고려하지 않아도 되는 점은 자바에서는 자바 가상 머신이 알아서 메모리를 관리해주기 때문이다. 객체가 더 이상 프로그램에서 사용되지 않으면 스스로 판단해서 메모리를 해제하고 수거한다. 패키지(package) 이론적인 말보다는 그냥 폴더라고 생각하면 된다. 폴더를 자바에서는 패키지라고 부르는 것이다. 개발자가 직접 만들어 사용하는 사용자 정의 클래스와 JDK안에 포함되어 있거나, 다른 개발자들이 미리 만들어 놓은 클래스가 있다. 패키지 이름은 소문자로 지정하는 것을 권장..
9일차 - 객체와 클래스 안녕하세요. pitang입니다. 오늘은 객체와 클래스입니다. 객체와 클래스 자바에서 클래스는 객체를 만들기 위한 툴이다. 쉽게 설명하자면, 설계도(=클래스)를 보고 만들어낸 제품(객체)으로 볼 수 있다. 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스(instance)(=생산)라고 한다. ex1) 왼쪽과 오른쪽은 모두 같은 출력을 하는 프로그램이다. 하지만, 왼쪽은 기존에 배운 방식으로 코드를 짠 것이고 오른쪽은 클래스를 이용해 코드를 짠 것이다. 왼쪽은 계산기를 또 쓰려면 메서드로 계산기를 계속 만들어야 하지만, 오른쪽은 계산기라는 기능을 가진 설계도를 가지고 오기만 하면 된다. Calculator 클래스이다. 설계도(=클래스)에 계산기 기능을 만들어 놓은 것이다. 설계도 클래스는 main이 없다...
8일차 - 메서드(method)(3) 안녕하세요. pitang입니다. 저번 메서드에서의 배열에 대한 예제문제를 보지 않아서 8일 차에 메서드 추가 게시하고 다음 9일 차 게시하겠습니다. 매개변수로 배열 받는 메서드 변수에 배열이 선언되게 되면 헷갈리는 부분이 분명 있다. 하지만, 많은 코드를 직접 써보며 익히면 언젠간 숙달하게 될 것이다. 매개변수를 선언할 때 배열의 규칙을 지켜 똑같이 선언해주면 된다. ex) 배열을 반환 유형으로 돌려주는 메서드 배열의 이름으로 주면 된다고 생각하면 조금은 쉽다. return에 변수명(=배열명)을 실어주면 된다. ex) 매개변수, 반환 유형 모두 배열로 있는 메서드 바로 예시로 살펴볼까요? 1. 전달받은 배열의 2배 크기를 만들어서 반환하는 method03() 2. int배열을 매개변수로 받고, 안에 들어..
8일차 - 메서드(method)(2) 안녕하세요. pitang입니다. 지난 게시물에 이어 메서드를 알아보겠습니다. 메서드 - 매개변수는 메서드를 호출할 때 값을 전달하는 매개체이다. 메서드가 실행될 때 필요한 데이터를 외부로부터 받기 위해 사용된다. 이름에서 보이듯 일종의 변수이기에 메서드의 소괄호() 부분에 데이터 타입과 함께 선언해야 하며 초기화는 하지 않는다. 메서드의 소괄호 안에 몇 개를 입력받을지 결정한다. 여러 개일 경우 쉼표로 연결하면 된다. 받을 데이터가 없다면 선언하지 않을 수도 있다. ex1) 1. 매개변수를 하나만 선언하여 1과 10의 합과 1과 100의 합을 출력해보세요. 2. 매개변수 두개를 선언하여 10과 20의 합과 1과 100의 합을 출력해보세요. 3. 매개변수 3개를 선언해 "가"를 10번 가로..
8일차 - 메서드(method)(1) 안녕하세요. pitang입니다. 지치는 화요일이네요. 화이팅있게 메서드 알아볼게요. 메서드(method) 메서드는 반복되는 코드 블록에 이름을 붙여 놓은 것이다. 반복되는 코드를 줄여주고 구조화시켜 알아보기 쉽게 한다. 메서드(함수)를 만들고 사용 즉, 호출한다. 메서드의 선언 방법 (매개 변수 = 입력 변수 = 파라미터 = 전달값) { 기능 구현; } 이다. 메서드는 메서드 내부에 만들 수 없다. main 바깥, class 안이면 어디서든 메서드를 만들 수 있다. ex1) 1부터 10까지의 합을 메서드를 이용하여 만들어 보세요. - calSum이라는 이름의 메서드를 선언한다. 기능 구현은 앞에서 하던 실행문과 같이 작성한다. sum이라는 값을 반환해준다. - main문 안에서 메서드를 호출해 출력한다...
7일차 - 보충, 응용문제 안녕하세요. pitang입니다. Quiz형식으로 살펴보겠습니다. 보충이기에 정답은 따로 접어두지 않고 열어놓겠습니다. ArrayInsert 1. Scanner를 생성하고 크기가 100인 배열을 선언하세요. 2. While문(무한루프)에서 먹고 싶은 음식을 입력받아 배열에 저장하세요. 3. "그만"을 입력받으면 탈출하세요. 4. For문을 통해 배열에 저장되어 있는 음식을 모두 출력하세요. 먹고 싶은 음식이 무엇입니까? 입력해보세요. > 햄버거 > 피자 > 회 내가 먹고 싶은 음식들 : [햄버거, 피자, 회] public class ArrayInsert { public static void main(String[] args) { Scanner scan = new Scanner(System.in); Stri..
7일차 - 탈출문(2)(break, continue) 안녕하세요. pitang입니다. 오늘은 6일차에 이어 탈출문을 보겠습니다. break문 6일차때 break문에 대한 설명을 살펴보면 반복문 또는 블록 구조에서 빠져나올 때 사용한다라고 되어있다. 중첩 반복문의 경우에 내부 반복문에서 break가 사용되었을 경우 그 break문이 속한 내부 반복문만을 빠져나오게 된다. 이 경우, 바깥쪽 반복문까지 종료시키려면 바깥쪽 반복문에 이름을 붙이고, break 이름; 을 사용하면 바로 빠져나올 수 있다. ex) continue문 continue문은 쓰지 않아도 크게 영향은 없고 프로그램이 돌아가는 데에 문제는 없다. 하지만, 적절히 사용하면 조금 더 효율적인 반복문이 들어갈 수 있다. continue문은 break문과 마찬가지로 반복문 내의 어떤 곳이든 위치할 수 ..

728x90
반응형