본문 바로가기
반응형

전체 글108

【OOP】04_상속 안녕하세요 코이킹입니다. 이번 포스트에서는 상속에 대해서 설명하겠습니다. 1. 상속이란? 부모클래스의 멤버 변수와 메서드를 자식 클래스에서 상속하여 사용할 수 있게 하는 것을 말합니다. ※ extends키워드를 사용하여 상속할 부모 클래스를 정의하여 상속관계를 설정할 수 있습니다. public class 자식클래스 extends 부모 클래스 { } ※ 예제코드 public class Animal { protected String name; protected int age; public Animal() {} public Animal(String name, int age) { this.name = name; this.age = age; } public void printName() { System.out.p.. 2022. 1. 18.
【OOP】03_캡슐화 안녕하세요 코이킹입니다. 이번 포스트에선 캡슐화에 대해서 설명하겠습니다. 1. 캡슐화란? 캡슐화란 관련된 데이터와 행위를 묶어 '클래스'라는 '캡슐'에 담아 넣는 것을 의미합니다. 사실 클래스를 만들때 무의식적으로 캡슐화를 하고 있었던 것이라고 할 수 있습니다. 2. 캡슐화의 이유 1) 코드의 활용·관리 예를들어 강아지 클래스에 날개 속성을 정의한다면, 강아지 클래스에 날개 속성이 있다고 생각하기는 어렵지 않을까요? 관계없는 속성과 매서드는 제대로 활용되고·관리되기가 어렵습니다. 관련이 있는 것들만 클래스라는 캡슐에 모아둔다면 소스코드를 재활용하고 관리하기가 한결 수월해질 것입니다. 2) 정보은닉 클래스안에 모아둔 멤버 변수와 메서드를 어느 곳에서 나 불러낼 수 있다면 클래스의 원래 설계된 의도대로 동작.. 2022. 1. 16.
【OOP】02_멤버변수·메서드·생성자 안녕하세요 코이킹입니다. 이번 포스트에선 클래스의 구성요소인 멤버변수·메서드·생성자에 대해서 설명하겠습니다. ※ 설명에 사용할 코드 public class Dog { // 멤버변수 String name; int hp; // 정적(static) 멤버변수 static String breed; static final String cryingSound = "Wang~!"; // 인스턴스 메서드 public void eat() { System.out.println("eat"); } // 메서드 오버로딩 public void eat(String food) { System.out.println("eat : "+food); } public String getName() { return name; } public int.. 2022. 1. 15.
【OOP】01_객체・클래스・인스턴스 안녕하세요 코이킹입니다. 이번 포스트에서는 OOP(Object Oriented Programming == 객체지향 프로그래밍)에 대한 설명중, 객체・클래스・인스턴스에 대해서 설명하려 합니다. 1. 객체란? 먼저 일반적인 객체의 개념에 대해서 알아보면 현실세계에 존재하는 '물체','대상'이 되겠습니다. ※ 참고사이트 https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88 구체적인 예를 들어 본다면 사람, 강아지와 같은 동물도 스마트폰, 컴퓨터, 상자와 같은 물체도, 포켓몬, 디지몬과 같은 게임의 캐릭터도 객체라 볼 수 있습니다. 그렇다면 OOP에서의 객체는 무엇일까요? 현실세계의 객체에서 중요하고 핵심적인 부분.. 2022. 1. 10.
【Java문법】예외처리 안녕하세요 코이킹입니다. 이번 포스트에서는 예외처리에 대해서 설명해보겠습니다. 1. 예외처리란? 예외처리는 프로그램 실행 중 예기치 못한 결과가 발생했을 때의 대응을 말합니다. 예를 들어 콘솔에서 사용자 입력으로 '숫자 데이터'를 입력받아야 하는데 '문자열 데이터'를 입력받아, 문자열 데이터를 숫자 변수에 대입하려 할 경우 프로그램은 예외를 발생시키게 됩니다. 이런 예외의 상황에서 1) 예외발생의 이유를 로그 등으로 알려주거나, 2) 예외가 발생했을 때 필요한 로직을 실행하는 것 등을 예외처리에서 담당합니다. 2. try-catch구문 try-catch구문은 예외가 발생되리라 예상되거나 반드시 예외 처리를 해줘야하는 코드를 감싸서 예외를 처리합니다. 예외 발생이 예상되는 곳의 코드를 try구문으로 감싸주.. 2022. 1. 10.
【Java문법】셋(Set) 안녕하세요 코이킹입니다. 이번 포스트에서는 셋에 대해서 설명해보겠습니다. 1. 셋(Set)이란? 셋은 중복되지 않는 데이터의 모음을 저장하기 위한 자료구조입니다. Set을 구현한 클래스로는 HashSet, LinkedHashSet, TreeSet 등이 있습니다. 2. HashSet 해시 셋은 HashMap의 Key값이 유일해야 한다는 특성을 이용하여 구현되었습니다. 따라서 HashMap의 특성과 장단점을 공유합니다. 1) 데이터 삽입 add메서드를 사용하여 데이터를 삽입 할 수 있습니다. Set set = new HashSet(); set.add("HashSet-value-01"); set.add("HashSet-value-02"); set.add("HashSet-value-02"); // 중복된 값은 .. 2022. 1. 10.
【Java문법】맵(Map) 안녕하세요 코이킹입니다. 이번 포스트에서는 맵에 대해서 설명해 보겠습니다. 1. 맵(Map)이란? 맵은 Key-Value구조로 구성된 데이터를 저장하는 자료구조입니다. Key를 사용한 데이터 검색에 최적화된 자료구조이며, Key값은 중복될 수 없다는 특징이 있습니다. 맵을 구현한 것으로는 HashMap, LinkedHashMap, TreeMap 등이 있습니다. 2. HashMap 1) HashMap이란? 해시맵 이란 해시 테이블을 사용하여 맵을 구현한 자료구조로, Key값을 해시함수를 통해 데이터의 참조값이 저장된 버켓(bucket)의 인덱스로 변환하여, 버켓의 인덱스 값을 찾고, 버켓의 인덱스값을 통해 데이터에 접근합니다. ※ 장점 - Key값으로 데이터를 검색하므로 검색속도가 빠릅니다. ※ 단점 - .. 2022. 1. 10.
【Java문법】리스트(List) 안녕하세요 코이킹입니다. 이번 포스트에서는 리스트에 대해서 설명해보겠습니다. 1. 리스트(List)란? 리스트는 자바에서 자료구조와 데이터를 처리하는 컬렉션 프레임워크에 속한 인터페이스입니다. 배열처럼 순서가 있는 데이터를 저장하기위한 자료구조로 리스트를 구현한 클래스로는 ArrayList, LinkedList, Vector 등이 있습니다. 2. ArrayList 1) ArrayList란 'ArrayList는 크기가 변할 수 있는 배열'과 같은 자료구조 입니다. ArrayList의 클래스 내부를 보면 배열을 사용해서 데이터를 저장하는 것을 알 수 있습니다. ※ 장점 - 배열처럼 인덱스를 사용하여 빠르게 요소에 접근이 가능합니다. ※ 단점 - 리스트의 길이가 변할때 처리시간이 오래 걸립니다. : 리스트에 .. 2022. 1. 10.
【Java문법】래퍼클래스 안녕하세요 코이킹입니다. 이번 포스트에서는 래퍼 클래스에 대해서 설명하겠습니다. 1. 래퍼(Wrapper) 클래스란? 래퍼 클래스란 원시 데이터 타입을 클래스화 한 것으로, 1) 원시 데이터 타입의 변수를 인스턴스로서 사용해야 하는 경우 2) 문자열 숫자의 상호 변환해야하는 경우 등에 사용됩니다. 2. 원시 데이터 타입에서 래퍼 클래스의 인스턴스로 변환하기 - 원시데이터 타입 -> 래퍼 클래스로의 변환은 new연산자를 사용합니다. // ※ Wrapper클래스는 객체처럼 null대입이 가능 Integer wrapperInt = null; Long wrapperLong = null; Short wrapperShort = null; Byte wrapperByte = null; Double wrapperDoub.. 2022. 1. 10.
반응형