본문 바로가기 메뉴 바로가기

언젠가 꽃이 될 개발자

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

언젠가 꽃이 될 개발자

검색하기 폼
  • 분류 전체보기 (214) N
    • 프로그래밍 (49) N
      • 자바 (29)
      • 스프링 (4)
      • JPA (9)
      • querydsl (2)
      • html,css (0)
      • database (2)
      • Spring Security (3) N
    • 개발 (5)
    • 코딩테스트 (15)
      • 백준 자바 (14)
    • Git (3)
    • 앱개발 (1)
    • 자격증 (39)
      • 정보처리산업기사 (39)
    • 디버깅 (19)
    • 파이썬 (5)
      • 이것이 취업을 위한 코딩 테스트다 (5)
    • 독서 (8)
      • 스프링 부트와 AWS로 구현하는 웹 서비스 (2)
    • http (0)
    • 기타 (5)
    • 해커랭크 챌린지 (53)
    • 일기 (1)
    • 한줄다짐 (0)
    • cs (3)
    • 경험 (1)
    • sql (0)
  • 방명록

분류 전체보기 (214)
[자바의 정석] Ch 7-23 다형성(polymorphism)이란? Ch 7-24 참조변수의 형변환이란? Ch 7-26 Instanceof 연산자란? Ch 7-27 매개변수의 다형성이란?

오늘은 객체지향의 꽃인 다형성에 대해 학습해보자. 🤔 다형성(polymorphism)이란? ✔ 조상 타입 참조 변수로 자손 타입 객체를 다루는 것 ✔ 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. 조상 타입 참조 변수로 자손 타입 객체를 다루는 것 Tv t = new SmartTv(); // 타입 불일치 위와 같이 Tv (조상 타입 참조 변수) 리모콘으로 SmartTV(자손 타입 객체)를 다루는 것을 다형성이라고 한다. 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. Tv t = new SmartTv(); // 허용 SmartTv s = new Tv(); // 허용 안 됨. // 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. SmartTv 리모컨 버튼 6(Tv버튼..

프로그래밍/자바 2022. 6. 21. 05:07
[자바의 정석] Ch 7-17 제어자(modifier)란? static이란? final이란? abstract란? Ch 7-21 접근 제어자(access modifier)란? Ch 7-22 캡슐화란?

🤔 제어자(modifier)란? ✔ 클랫와 클래스의 멤버(멤버 변수, 메서드)에 부가적인 의미 부여 🤔 static이란? 🤔 final이란? 🤔 abstract 란? 추상의, 미완성의 ✅ 추상메서드란? ✔ 몸통이 없는 메서드 ✔ 미완성 메서드 ✔ 선언부만 있고, 구현부는 없다. ✔ abstract 키워드가 붙는다. ✅ 추상클래스란? ✔ 추상 메서드를 갖고 있는 클래스 추상클래스의 인스턴스 생성불가 ❌ abstract class AbstractTest { // 추상클래스 (추상메서드를 포함한 클래스) abstract void move(); // 추상 메서드(구현부가 없는 메서드) } AbstractTest a = new AbstractTest(); // 에러!! 추상 클래스의 인스턴스 생성불가 추상클래스는..

프로그래밍/자바 2022. 6. 21. 03:55
[자바의 정석] Ch 7-10 참조변수 super란? Ch 7-12 패키지(package)란? Ch 7-16 static import문이란?

🤔 참조변수 super란? ✔ 객체 자신을 가리키는 참조변수. 인스턴스 메서드(생성자) 내에서만 존재 ✔ 조상의 멤버를 자신의 멤버와 구별할 때 사용 🤔 this와 super의 차이점? this : 지역변수(local variable)와 인스턴스 변수(instance variable)의 구분에 사용 super : 조상의 멤버와 자신의 멤버 구분에 사용 다음의 예제를 보자. class T2 { public static void main(String[] args) { Child c = new Child(); c.method(); } } class Parent { int x = 10; /** super.x */ } class Child extends Parent { int x = 20; // this.x vo..

프로그래밍/자바 2022. 6. 21. 03:10
[자바] 객체지향을 쓰는 이유

그간 필자는 객체지향이 정확히 무엇인지도 모르고 생성자, 오버로딩, 오버라이딩은 왜 배우는지도 모르고 주입식으로 학습했다. 객체지향 : 객체 단위로 프로그래밍 하는것, 코드의 중복 줄일 수 있음. 오버로딩 : 생성자 여러 개 생성하는 데 매개변수 다른 것 오버라이딩 : 상속받은 생성자 재정의 하는 것 등 이론식으로 공부했다. 그러다 다음의 예제를 만나고 모든 것이 한번에 이해가 되었다. 이전 필자의 포스팅에서 소개한 내용인데 필자의 시야가 확 트이는? 예제였기에 다시 한 번 포스팅 한다. (이전 포스팅 참고) 바로 들어가보자. 다음의 코드를 보자. (코드를 잘 짜는 것이 얼마나 코드를 단축시킬 수 있는지 알게 되는 코드이다.) 필자는 처음에 강의를 듣고 소름이 돋았다. 👍 class MyPoint3 ex..

프로그래밍/자바 2022. 6. 21. 02:19
[자바의 정석] Ch 7-1 상속(Inheritance)란? Ch 7-3 포함(composite) 관계란? Ch 7-4 클래스 간의 관계 결정하기 Ch 7-5 단일 상속(Single Inheritance)란? Ch 7-6 Object 클래스란? Ch 7-7 오버라이딩(overriding)이란? Ch 7-9 ..

🤔 상속(Inheritance)란? ✔ 기존의 클래스로 새로운 클래스를 작성하는 것.(코드의 재사용) 두 클래스를 부모와 자식으로 관계를 맺어주는 것 ✔ ⭐ 자손은 조상의 모든 멤버를 상속받는다. (생성자, 초기화블럭 제외) 따라서 ✔ 자손의 멤버 개수는 조상보다 적을 수 없다.(같거나 많다.) 왜냐 모든 멤버를 상속받으니까!! ✔ 자손의 변경은 조상에 영향을 미치지 않는다. 🤔 포함(composite) 관계란? ✔ 포함(composite)이란? 클래스의 멤버로 참조변수를 선언하는 것 작은 단위의 클래스를 만들고, 이 들을 조합해서 클래스를 만든다. class Poitn { int x; int y; } class Circle { int x; // 원점의 x좌표 int y; // 원점의 y좌표 int r;..

프로그래밍/자바 2022. 6. 21. 02:08
[자바의 정석] Ch 6-36 생성자 this()란? Ch 6-37 참조변수 this란? Ch 6-37 this()와 this의 차이란? Ch 6-38 변수의 초기화란?

🤔 생성자 this()란? 생성자에서 다른 생성자를 호출할 때 사용한다. 다른 생성자 호출 시 첫 줄에서만 사용가능! 다음의 예시를 살펴보자. Car(String color) { door = 5; Car(color, "auto", 4); // 에러, 다른 생성자 호출 시 반드시 첫 줄에서만 사용가능!! // 또한 같은 클래스 안의 생성자를 호출할 때 Car(color, "auto", 4); 로 호출하면 안되고 // this 사용해야함. } // 올바른 사용법 Car(String color) { this(color, "auto", 4); } 🤔 참조변수 this란? 인스턴스 자신을 가리키는 참조변수 인스턴스 메서드(생성자 포함)에서 사용가능 지역변수(lv)와 인스턴스 변수(iv)를 구별할 때 사용 this..

프로그래밍/자바 2022. 6. 21. 01:07
[자바의 정석] Ch 6-26 static 메서드와 인스턴스 메서드란? Ch 6-30 오버로딩(overloading)이란? Ch 6-32 생성자(constructor)란?

🤔 인스턴스 메서드란? 인스턴스 생성 후, '참조변수.메서드이름()'으로 호출 인스턴스 멤버(iv, im)와 관련된 작업을 하는 메서드 메서드 내에서 인스턴스 변수(iv) 사용 가능 🤔 static 메서드란?(클래스 메서드) 객체 생성없이 '클래스이름.메서드이름()'으로 호출 인스턴스 멤버(iv, im)와 고나련없는 작업을 하는 메서드 메서드 내에서 인스턴스 변수(iv) 사용불가 다음의 결과를 예측해보라. class MyMath { long a, b; long add() { // 인스턴스 메서드 return a + b; } static long add(long a, long b) { // 클래스 메서드(static 메서드) return a + b; } } public class Ch6_27Static메서..

카테고리 없음 2022. 6. 21. 00:19
[자바의 정석] Ch 6-14 메서드란? Ch 6-20 return문이란? Ch 6-22 호출 스택(call stack)이란? Ch 6-23 기본형 매개변수란? Ch 6-24 참조형 매개변수란? Ch 6-25 참조형 반환타입이란?

🤔 메서드란? 문장들을 묶어 놓은 것 값(입력)을 받아서 처리하고, 결과를 반환(출력) 메서드 = 선언부 + 구현부 🤔 메서드의 장점? 코드의 중복을 줄일 수 있다. 코드의 관리가 쉽다. 코드를 재사용할 수 있다. 코드가 간결해서 이해하기 쉬워진다. int add(int a, int b) { // 선언부 int result = a + b; // 구현부 return result; // 호출한 메서드로 결과 반환 // 구현부 } ✅ 메서드는 클래스 영역에만 정의 가능하다 🤔 Return이란? 실행 중인 메서드를 종료하고 호출한 곳으로 되돌아가는 것 반환타입이 void가 아닌 경우, 반드시 return 필요 🤔 호출 스택이란? 스택(stack) : 밑이 막힌 상자. 위에 차곡차곡 쌓임. 호출 스택 : 메서드 ..

프로그래밍/자바 2022. 6. 20. 04:14
[자바의 정석] Ch 6-6 객체의 생성과 사용, Ch 6-8 객체 배열, Ch 6-9 클래스의 정의(1), Ch 6-11 선언위치에 따른 변수의 종류, Ch 6-12 클래스 변수와 인스턴스 변수

🤔 객체의 생성 // 클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수 선언 // 변수명 = new 클래스명(); // 클래스의 객체를 생성 후, 객체의 주소를 참조변수에 저장 Tv t; // t : 참조변수 t = new Tv(); // Tv 인스턴스 생성 후, 생성된 Tv 인스턴스의 주소를 t에 저장 ✅ 순서 클래스 작성 -> 객체 생성 -> 객체 사용 🤔 객체 배열 객체 배열 == 참조변수 배열 🤔 클래스의 정의 클래스 == 데이터 + 함수 🤔 변수란? 하나의 데이터를 저장할 수 있는 공간 🤔 배열이란? 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간 배열의 한계 : 같은 종류의 데이터만 저장할 수 있다. 🤔 구조체란? 서로 관련된 여러 데이터(종류 관계X)를 하나로 저장할 수 ..

프로그래밍/자바 2022. 6. 20. 00:59
[자바의 정석] Ch 6-2 클래스와 객체란?

🤔 클래스의 정의 클래스란 객체를 정의해 놓은 것이다. 🤔 클래스의 용도 클래스는 객체를 생성하는 데 사용한다. 그럼 객체란 무엇일까? 🤔 객체의 정의 실제로 존재하는 것 사물 또는 개념을 의미한다. 🤔 객체의 용도 객체가 가지고 있는 기능과 속성에 따라 다르다. 객체의 구성 요소 - 속성과 기능 객체 = 속성(변수) + 기능(메서드) 🤔 객체와 인스턴스 객체 : 모든 인스턴스를 대표하는 일반적 용어 인스턴스 : 특정 클래스로부터 생성된 객체(예 : TV 인스턴스) 클래스 -------------------> 인스턴스(객체) 인스턴스화 그럼 오늘도 열공하자 🔥

프로그래밍/자바 2022. 6. 20. 00:15
[자바의 정석] Ch 6-1 객체지향 언어란?

🤔 객체 지향 언어 컴퓨터 프로그래밍의 한가지 기법으로 절차적 프로그래밍 방법과 대조되며 객체를 만들고 객체를 사용하는 프로그래밍 방법을 의미한다. 객체지향 언어 = 프로그래밍 언어 + 객체지향개념(규칙) 객체 지향 언어의 장점 ❓ 코드의 재사용성이 높고 유지보수가 용이하다 중복된 코드를 제거할 수 있다. 즉, 프로그램을 데이터와 처리방법으로 나누는 것이 아닌 프로그램을 다수의 "객체"로 만들고 상호작용하는 방식이다. 명령어들로 이루어진 목록이 아닌 하나하나의 독립된 "객체"들의 그룹으로 생각하여 객체간의 메시지를 주고 받음으로서 연결하는 방식이다. 🤔 OOP 4대 핵심 개념 OOP (Object-Oriented Programming) : 객체 지향 프로그래밍 캡슐화 상속 추상화 ⭐ 다형성 ⭐ 다음 포스..

프로그래밍/자바 2022. 6. 20. 00:05
[디버깅] By default, the Java language level is set to 5 which is not supported by the current Java version. Update the language level : Maven version 에러 해결법 🤔

인프런 김영한 선생님의 '자바 ORM 표준 JPA 프로그래밍 - 기본편' 강의를 듣다가 다음의 에러를 발견하고 어떻게 해결했는지를 기록하려한다. 🤔 에러메세지 By default, the Java language level is set to 5 which is not supported by the current Java version. Update the language level 두 가지 방법을 시도했는데 결론적으로 나는 '방법 2'로 해결하였지만 두 방법 다 소개하고자 한다. ✔ 시도 방법 1 pom.xml에 다음과 같은 내용을 추가한다. org.apache.maven.plugins maven-compiler-plugin 8 8 이렇게 하고 실행을 시켰으나 다음과 같은 에러가 또 발생했다. 시도 방법..

디버깅 2022. 6. 19. 21:43
[기타] ㅈㅏㅇㅡㅁㅂㅜㄴㄹㅣ 자음분리 현상 해결법

오늘은 키보드의 자음 분리 현상 해결법에 대해 포스팅 하려고 한다!! 간단하게 해결할 수 있다는데 (작업관리자에서 작업 종료) 필자는 그것으로 해결되지 않아 시간 뺏기지 말라는 의미로 (우리에게는 시간은 개발하는데만 써야하니까 😆) 빠르게 해결하는 포스팅을 작성하려 한다! 바로 시작해보자 😊 1. 시작 표시줄에서 '터치 키보드 단추 표시'를 활성화한다. 2. 시작표시줄 우측에 있는 '가상 키보드'를 실행시키다. 3. 가상 키보드로 아무 버튼이나 몇 번 클릭하고 가상 키보드를 종료시킨다. 그럼 해결된다!! (지금 이 포스팅도 한시간동안 키보드 자음분리 현상에 막혀 삽질하다 해결 후 바로 작성하는 포스팅이다. 😂) ➕ 참고로 이 '자음분리 현상'은 WIndows키와 'H'키가 같이 눌리면 발생한다고 하니 다..

기타 2022. 6. 18. 20:31
[정보처리산업기사] 실기 합격 결과 및 실기 공부 방법 공유

오늘은 2022 정보처리산업기사 실기 합격 발표가 있는 날이다. 인터넷을 보니 실기 시험 당일날 가답안을 작성해오는 사람도 있는 것 같던데 필자의 경우 가답안 작성이 가능한지 몰라서 한달내내 안절부절하며 오늘만을 기다렸다. 오전 8시 50분부터 큐넷 로그인 해놓고 무슨 대학 합격 발표하듯이 9시 땡하자마자 광클했다.ㅋㅋㅋㅋ 다행히 아주 턱걸이로 합격했다!! 이번 실기 접수날 학교 수업 때문에 일찍 신청하지 못해서 타지까지 가서 실기 시험을 치뤘기 때문에 뭔가 뽕(?)뽑으려면 붙어야만 했다! 아무튼 거두절미 하고!! 필자의 합격 결과 인증 및 공부방법에 대해 소개하겠다!! 아주 턱걸이로 붙어 자랑할 만한 점수는 아니지만 뭐 어떤가..! 합격만 하면 되는 것 아닌가,,? 🤔 어쨌든 합격해서 행복하다!! 1월..

자격증/정보처리산업기사 2022. 6. 18. 18:07
[JPA] SQL 중심적인 개발의 문제점과 JPA를 사용해야 하는 이유

인프런 김영한 선생님의 '자바 ORM 표준 JPA 프로그래밍 - 기본편' 강의에서 SQL 중심적인 개발의 문제점에 대해 학습한 내용을 정리한다. ✔ 연관관계 객체는 연관관계 시 참조 사용 : member.getTeam() 테이블은 외래 키 사용 : JOIN ON M.TEAM_ID = T.TEAM_ID 객체에서는 Team -> Member로 이동할 수 없지만 테이블에서는 Team에서 FK를 이용해 Member의 데이터로 가고 싶으면 member와 team을 조인해서 이동할 수 있다. ✔ ORM이란? 🤔 Object-relational mapping(객체 관계 매핑) 객체는 객체대로 설계하고 관계형 데이터베이스는 관계형 데이터배이스대로 설계하면 ORM 프레임워크가 중간에서 매핑을 해주는 것을 의미 대중적인 ..

프로그래밍/JPA 2022. 6. 17. 21:00
이전 1 ··· 5 6 7 8 9 10 11 ··· 15 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • 해커랭크
  • 해커랭크 챌린지
  • Java
  • 22 정보처리 산업기사
  • JPA
  • 백준
  • 해커랭크 자바 챌린지
  • 그리디
  • 정보처리산업기사 공부법
  • LinkedList
  • 자바의 정석
  • hackerrank
  • hackerrank challenges
  • 챌린지
  • 소스코드
  • 나동빈
  • 코드
  • ORM
  • challenges
  • 정보처리산업기사
  • stack
  • 22 정보처리산업기사
  • queue
  • 정보처리 산업기사
  • 디버깅
  • BAEKJOON
  • 이코테
  • 강의
  • 자바
  • 해커랭크 자바
more
«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바