전체 글 124

[Java]상속(Inheritance)과 super, super() 완벽 이해하기

super, super() 완벽 이해하기 Java 코드를 보다보면 super 키워드는 자주 등장합니다. 이번 포스팅에서는 super, super()에 대해 다뤄보려고 합니다. 하지만 위의 키워드를 이애하기 위해서는 객체지향프로그래밍 언어인 Java에 상속에 대해 먼저 알아야 합니다. 상속(Inheritance)이란? 상속(Inheritance)은 기존 클래스의 멤버변수와 메서드를 이어 받아 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미합니다. 위의 그림을 보면 부모 클래스로 부터 상속받아 생성된 자식 클래스가 부모 클래스를 포함하고 있는 것을 볼 수 있으며, 부모 클래스에 없는 추가된 멤버를 정의한 것을 확인할 수 있습니다. 상속(Inheritance) 예제 class Parent { ..

Languages/Java 2023.01.19

[Java]삼항 연산자(조건 연산자)로 불필요한 IF 문 줄이기

삼항연산자란? 삼항 연산자는 피연산자의 갯수가 3개인 조건부 연산자이다. 기본 구문은 아래 그림을 보면 확인할 수 있습니다. 이 연산자는 if-else 구문을 압축한 형태이며, 간결한 코드를 작성할 수 있습니다. 조건식의 결과 가 True인 경우 두 번째 항의 값 또는 연산식이 반환되며 반대로 조건식의 결과가 False인 경우 세 번째 항의 값 또는 연산식이 반환됩니다. IF -ELSE 구문 기본 형태 if (조건식) { System.out.println("조건식은 참입니다."); } else { System.out.println("조건식은 거짓입니다."); } 위의 IF-ELSE 구문은 조건식의 결과에 따라 다음 프로세스를 진행합니다. 하지만 이렇게 작성한 코드는 5줄 입니다. 이러한 구문에서 삼항 연..

Languages/Java 2023.01.18

[Javascript]화살표 함수(Arrow Function) 사용하기

화살표 함수(Arrow Function) 사용하기 이번 포스팅에서 다룰 화살표 함수(Arrow Function)는 ES6부터 함수를 만들 수 있는 새로운 문법으로 등장했습니다. 이러한 문법이 왜 등장하였고, 원래의 함수 생성 방식과 어떤 점이 다른지에 대해 알아보도록 하겠습니다. 일반 함수 생성 방식 //1번 function moonstar() { console.log("티스토리 블로그입니다.") }; //2번 var moonstar = function() {console.log("티스토리 블로그입니다.")} 화살표 함수(Arrow Function) 사용 var moonstar = () => console.log("티스토리 블로그입니다."); 화살표 함수(Arrow Function)를 사용하면 기존의 함..

[Java]클래스와 객체 그리고 인스턴스와의 차이

클래스(Class) 객체 지향이라는 프로그래밍 패러다임을 가진 JAVA에서는 객체(Object)를 중심으로 프로그래밍을 구성합니다. 객체(Object)의 동작이나 속성들을 구체화 시킨 것이 객체 지향 프로그래밍이기 때문에 객체(Object)는 정말 중요한 요소입니다. 이러한 객체를 만들어 낼 수 있는 틀이 바로 클래스(class)입니다. 클래스(class)라는 틀 안에는 속성(변수), 동작(메서드)으로 구성되어있습니다. 아래 예시를 보며 간단한 클래스(class)를 만들어 보겠습니다. 클래스(Class) 생성 public class Animal { //클래스명 : Animal //속성 private String name; //이름 private int lifespan; //수명 //동작 public vo..

Languages/Java 2023.01.17

[MYSQL]문자열 여러 개 합치기 - CONCAT(), CONCAT_WS()

문자열 여러 개 합치기 - CONCAT( ), CONCAT_WS( ) 데이터 조회 시 여러 컬럼에서 조회되는 데이터를 하나의 문자열로 출력해야 하는 경우가 있습니다. 이러한 상황에서 CONCAT(), CONCAT_WS()함수를 사용하여 간단하게 문자열을 합칠 수 있습니다. 기본 사용법은 다음과 같습니다. CONCAT( ) - 기본 문법 -- 기본 문법 SELECT CONCAT(문자A, 문자B, 문자C ....) FROM 테이블 CONCAT( ) - 예제 SELECT CONCAT('Moonstar', ' ', 'Tistory') FROM DUAL; -- 결과 -- Moonstar Tistory SELECT CONCAT('Moonstar', NULL, 'Tistory') FROM DUAL; -- 결과 -- ..

RDBS/MYSQL 2023.01.16

[Computer Vision]OpenCV를 이용한 이미지 전처리(이진화, 그레이스케일, 블러링)

⚡️ OpenCV(Open Source Computer Vision) 개요 오픈 소스 컴퓨터 비전 라이브러리 중 하나로 실시간으로 이미지, 영상 프로세싱에 중점을 둔 라이브러리이다. 과거에는 C언어만을 지원하였지만, 현재 C++, Python에서도 활용이 가능하다. 필자도 현재 Python으로 랩핑된 OpenCV를 활용하고 있으며, 특히 딥러닝 분야에 특화된 Python이기에 필자도 현재 자주 사용하고 있다. 이미지도 일종의 데이터로 분류되며, 데이터를 더 의미 있게 만들기 위해서는 전처리 과정을 필수로 가지게 됩니다. 각각의 이미지는 픽셀을 갖고 있으며, 각각의 픽셀은 8비트로 구성된 각각의 데이터를 지니고 있습니다. 이미지 데이터처리의 기본적인 전처리 과정인 그레이스케일에 대하여 알아보고, 더 나아가..

Languages/Python 2023.01.16

[MYSQL]ORDER BY절의 다중 정렬

ORDER BY절의 다중 정렬 MySQL에서는 ORDER BY절을 사용하여 정렬 순서를 지정할 수 있다. ASC(오름차순) 및 DESC(내림차순)을 사용하며, 기본적인 문법은 다음과 같다. SELECT * FROM 테이블 ORDER BY SAL DESC(내림차순) ASC(오름차순) ORDER BY절 예제 ID NAME SAL(만원) 101 문OO 3000 202 차OO 4300 203 채OO 5200 301 박OO 4400 ORDER BY절 내림차순 SELECT ID , NAME , SAL FROM MEMBER -- 내림차순 ORDER BY SAL DESC ID NAME SAL(만원) 203 채OO 5200 301 박OO 4400 202 차OO 4300 101 문OO 3000 ORDER BY절 오름차순 ..

RDBS/MYSQL 2023.01.16

[MYSQL]REGEXP(정규 표현식) : 특정 문자열 처리

정규 표현식(Regular Expression) 프로그래밍 언어에서 정규 표현식은 문자열을 처리하는 방법 중의 하나로 특정한 패턴의 문자를 '검색'하거나 '치환'하는 과정을 간편하게 처리해주는 형식 언어이다. 이번 포스팅에서는 MySQL의 정규표현식과 정규식을 사용한 데이터 검색에 대해 알아보겠습니다. 정규 표현식(Regular Expression) - MySQL문법 패턴 의미 . 문자 한 개 ^ 문자열의 처음 $ 문자열의 끝 * 앞에 나온 문자의 n개 이상 반복 [] 괄호 안에 문자열 일치 {} 반복 | 또는 [A-z], [:alpha:] 대,소문자열을 찾음 [0-9], [:digit:] 숫자인 문자열 찾음 [^패턴] 임의의 패턴이 아닌 것을 찾음 위의 패턴들은 정규식에 자주 등장하는 패턴이다. 물론 ..

RDBS/MYSQL 2023.01.13

[JAVA]ArrayList의 동작 및 내부 구현

2022.11.30 - [JAVA] - [JAVA] 콜렉션이란? [JAVA] 콜렉션이란? JAVA의 컬렉션(collection>이란 데이터의 집합을 의미하며 컬렉션 프레임워크(collection framework)란 다수의 데이터를 쉽고과적으로 처리할 수 있는 표준화된방법을 제공하는 클래스의 집합을 의미한다 mooonstar.tistory.com 2023.01.07 - [JAVA] - [JAVA]LinkedList와 ArrayList [JAVA]LinkedList와 ArrayList LinkedList와 ArrayList 2022.11.30 - [JAVA] - [JAVA] 콜렉션이란? [JAVA] 콜렉션이란? JAVA의 컬렉션(collection>이란 데이터의 집합을 의미하며 컬렉션 프레임워크(colle..

Languages/Java 2023.01.13

[JAVA]equals()와 hashcode()는 무엇인가?

equals()와 hashcode()는 무엇인가? 위의 질문은 자바 프로그래머를 준비하는 사람들이라면 한 번씩 질문 받는 문제이지 않을까 싶다. 실제 위 질문은 기업의 기술 면접에서도 자주 등장한다고 한다. 그래서 이번 포스팅에서는 위의 질문에 대한 답을 찾아 볼까한다. equals()와 hashcode() 우리가 정의하고 사용하는 모든 객체는 equals()와 hashcode()를 반드시 상속받는다. 그 이유는 무엇일까? 그 이유는 equals()와 hashcode()는 모든 객체의 최상위 객체인 Object에 정의되어 있기 때문이다. 이제 각각의 메서드에 대해 자세히 알아보자. equals() //Object - equals public boolean equals(Object obj) { return..

Languages/Java 2023.01.12