Java 자바를 잡아버려 (1) 나의 생각을 적고 복습을 해버릴 것 이다 책을 펼치자 마자 나오는 설명인데 그 안의 내용을 실행하게 된다 라고 설명을 해준다 아래 소스코드와 실행 결과로 위에 설명을 보충해준다 사칙연산과 나머지를 계산하는 것 비교연산자 및 논리연산자 산술연산이 아닌 자바의 연산자는 "비교연산자","논리연산자가 있다 이 연산자들은 조건문에 사용해서 조건에 따른 명령을 처리한다 비교연산자 true false 크... JavaJava JPA + QueryDSL 계층형 댓글, 대댓글 구현(2) 이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이 전편에서 만들었던 N+1 문제가 발생하던 로직이다. 만약 부모 댓글의 개수가 100개라면 100번 이상의 쿼리가 나가게 되는 아주 좋지 못한 코드이다..ㅠ 🥲 위의 코드는 게시글... JavaJPASpringbootQuerydslJPA JAVA 공부하기(5) 🧑🏻💻 자바 프로그램은 클래스 선언으로 시작되며, 이 안에서 메소드, 변수, 상수 등을 모두 선언한다. C/C++ 에서 말하는 전역 변수, 전역 함수가 존재할 수 없으며, 이들은 반드시 클래스 내에 캡슐화되어야 한다. 자바에는 boolean, char, byte, short, int, long, float, double 등 8개의 기본 타입이 있다. 큰 데이터 타입에서 작은 데이터 타입으로 타입 변... JavaJava 제 11장. 상속(inheritance) 상속(inheritance) 상속(inheritance)이란 기존의 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다. 상속받는 클래스를 자식 클래스, 하위 클래스 또는 서브 클래스라고 부른다. 상속을 해주는 클래스를 부모 클래스, 상위 클래스 또는 슈퍼 클래스라고 한다. 자식 클래스가 부모 클래스로부터 상속을 받게 되면 부모 클래스의 필드와 메서드를 물려받게 된다... JavaJava AVA - 쓰레드 (3) main메서드의 코드를 수행하는 쓰레드 쓰레드는 '사용자 쓰레드'와 '데몬 쓰레드' 두 종류가 있다. 실행 중인 사용자 쓰레드가 하나도 없을 때 프로그램은 종료된다. 싱글쓰레드 멀티쓰레드 위의 코드는, 사용자로부터 입력을 기다리는 구간동안 아무런 일도 하지 않는다. (동기) 사용자로부터 입력을 기다리는 동안 다른 일을 수행하고 있는다. (비동기)... JavaJava [Spring Framework] 11강 - static file 처리와 File Upload Static web resource 처리 서버의 처리가 필요 없는 static web resources는 요청 시 서버를 거치지 않고 곧바로 응답이 필요 특정 URL로 요청이 오면 static resource로 인식하고 바로 응답 수행 Spring에서도 static resource와 Dynamic resource를 분리하여, static resources 응답을 빠르게 해줄 수 있도록 지원합... 백엔드JavaSpring FrameworkJava [Spring Framework] 10강 - RESTful API 그런데 RESTful API를 쓴 경우는 URL에 행위가 안써져 있고 단순히 특정 데이터 명시가 필요할 경우만 데이터를 명시하고 끝이 납니다. 특정 언어에 종속되지 않으며, 대부분의 프로그래밍 언어에서 JSON 포맷의 데이터를 핸들링 할 수 있는 라이브러리를 제공 Java에서 Jackson 라이브러리 의존성을 추가하면, 별다른 작업 없이 JSON 데이터를 Java 객체로 자동으로 변환시켜줍니... 백엔드JavaSpring FrameworkJava JpaSystemException이 뭐야..? 걸음수에 따른 각 학교별 유저의 랭킹을 매번 조회하기에는 성능 저하가 크기 때문에 일정 간격으로 유저의 랭킹을 데이터베이스에 저장시키는 작업을 한다. 그 중에서도 데이터베이스에 좀 더 초점을 맞췄기 때문에 IdClass를 이용해 복합키를 표현했다. UserRank.java UserRankId.java 이런식으로 JPA에서 제공하는 메소드 쿼리를 이용해 유저 랭킹을 조회한다. 직접 postma... Javaback endSpring bootexception프로젝트trouble shootingJPAJPA [Java] 백준 1543번 [문서 검색] 자바 백준 1543번 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. 예를 들어, 문서가 abababa이고, 그리고 찾으려는 단어가 ababa라면, 세준이의 이 함수는 이 단어를 0번부터 찾을 수 있고, 2번부터도 찾을 수 있다. 그러나 동시에 셀 수는 ... 문자열Java백준algorithmJava JAVA ShoppingMall Project java ShoppingMall Project 쇼핑몰 코드 짜기 전 설계도 관리자 메뉴 클래스 주문하기 메뉴 클래스 메인메뉴 클래스 출력 값 주문하기 출력해보기 장바구니에 담고싶은 물건의 각 번호(1~4)를 입력 -> 자동으로 장바구니에 담깁니다. 장바구니를 비우고 싶을땐 6번을 입력 -> 장바구니안에 있는 모든 상품들이 초기화됩니다. 결제하기 5번 입력 -> 카드/무통장입금 중 결제할 수단... JavaJava 2022/04/19 Java& Spring 공부일기 오늘은 지친 몸을 이끌고 퇴근을 했다.. 너무 힘들었지만 그래도 기능 몇개 개발초석을 다지고.. 집에까지 터덜터덜걸어갔다.. 지방에서 서울로 상경한지 거의 1년이 다되어간다 나는 반지하에 살고 있지만! 다시 고시원으로 갈거다! 왜냐.. 거기는 전기세와 가스비가 무료니까! (핵심) 그리고 생각해보니까 내가 집에서 하는거라곤 잠자기+공부하기+유튜브보기 밖에없었다! 아무튼 각설하고 지친 몸을 이끌... JavaSpringJava 자바 (JRE, JDK, Eclipse : 개발 환경 구축) 자바의 역사 • 1995년 Sun Microsystems 에서 발표했다. • 오라클(Oracle)이 2010년에 Sun Microsystems 를 인수했다. 자바의 특징 1. 객체 지향 프로그래밍(OOP) 언어이다. 자바는 객체 지향 프로그래밍(Object Oriented Programming) 언어이다. • 예외처리 및 컴파일과 런타임 시에 오류를 검사한다. • Open JDK : • Or... JavaJava [백준]2513 통학 버스(자바) 또, 이 아파트 단지 주민을 위해 도로 위 한 지점에 학교 하나를 신설하였다. 각각의 아파트 단지와 학교의 위치는 도로 위의 좌표로 주어지며, 또 각 아파트 단지마다 여기에 사는 학생들의 수도 주어진다. 통학버스는 아침에 학교를 출발하여 각 아파트 단지에 있는 학생들을 태우고 학교로 다시 돌아온다. 아파트 단지 A, B, C가 각각 좌표 0, 2, 5에 있고 이 단지에 사는 학생은 각각 1,... Java알고리즘그리디boj통학 버스자바25132513 Java @SuppressWarnings @SuppressWarnings은 노란색 경고 표시를 제외할때 사용한다. 옵션을 아래와 같이 줄 수 있다. 예시... JavaJava AVA - 쓰레드 (2) Thread클래스를 상속 Runnable 인터페이스를 구현 쓰레드의 실행 - start() 쓰레드를 생성한 후에 start()를 호출해야 쓰레드가 작업을 시작한다. start()와 run()... JavaJava 4일차 java - 변수와 연산자 2) 영문자,숫자,_를 사용할 수 있다. 3) 예약어를 사용할 수 없다(int나 String같은 기능이 있는 단어는 안됨) 4)특수문자, 공백을 사용할 수 없고, 숫자로 변수명이 시작되면 안된다. 자료형(Data Type) 기본 자료형(primitive Type) byte - 1byte short - 2byte int - 4byte long - byte flaot - 4byte double ... 연산자개념JavaJava 빌드 관리 도구 - Maven과 Gradle 빌드 관리 도구 build tool는 빌드를 자동으로 해주는 도구로, 필요한 라이브러리를 자동으로 추가해주고 빌드 라이프사이클을 관리해준다. Java에서 많이 쓰는 빌드 도구는 Maven과 Gradle이 있는데, 예전에는 Maven을 많이 썼지만 요즘은 코드도 더 간결하고 속도도 더 빠른 Gradle을 쓰는 추세라고 한다. Maven은 pom.xml 파일에서 xml 코드를 기반으로 필요한 라... JavaJava [ubuntu] Java 버전 변경 Java 버전 확인 Java 버전 변경 Java 버전 확인... ubuntuJavaJava 백준 Baekjoon 2966번 찍기 - JAVA 문제 상근이, 창영이, 현진이는 역사와 전통을 자랑하는 Sogang ACM-ICPC Team에 가입하려고 한다. 하지만, 가입하려고 하는 모든 지원자는 C언어 필기시험을 통과해야 한다. 이들은 C언어를 할 줄 모른다. 따라서, 필기시험을 모두 찍으려고 한다. 상근이는 A, B, C, A, B, C, A, B, C, A, B, C, ...와 같이 찍어야 통과할 수 있다고 생각한다. 하지만, 창... baekjoonJavaJava 백준 Baekjoon 3004번 체스판 조각- JAVA 문제 상근이는 3003번에서 동혁이가 발견한 체스판을 톱으로 자르려고 한다. 상근이는 체스판을 최대 N번 자를 수 있으며, 변에 평행하게만 자를 수 있다. 또, 자를 때는 체스판의 그 변의 한쪽 끝에서 다른쪽 끝까지 잘라야 한다. 자른 후에는 조각을 이동할 수 없다. 이때, 최대 몇 조각을 낼 수 있는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 100) ... baekjoonJavaJava 제 10장 . 캡슐화(encapsulation) 캡슐화(encapsulation) 이 전까지의 강의로 이제 클래스와 인스턴스를 활용하는 방법으로 현실세계를 객체 지향 프로그램으로 개발 할 수 있게 되었다. 실수로 속성을 덮어 쓰거나 잘못된 조작 하는 등 휴먼 에러를 없애기 위해서 "캡슐화"라는 방법을 이용해 실수를 방지할 수 있다. 간단하게 말해서 중요한 데이터를 쉽게 바꾸지 못하도록 사용한다. 정보 은닉 외부에서 특정 객체의 데이터 및 ... JavaJava [Java] 클래스, 인스턴스, 객체 (2) 메소드 위의 코드를 보면, sum이라는 메소드는 static이라는 키워드를 달게 되면, sum은 클래스 소속의 메소드가 된다. static이 붙어있는 클래스 메소드는 static이 붙어있지 않은 메소드와 다르게 클래스에 접근하여 직접적으로 실행할 수 있다. 위의 코드를 보면, Calculator3라는 클래스에 직접적으로 접근하여 sum이 실행된다. 이는 메모리와 코드를 절약할 수 있게 도와준... eclipseJavaJava [Java]기본26~30강/활용 1~4강 까지의 내용 정리 Java7 버전까진 인터페이스에 상수와 추상 메소드만 사용 가능 Java8 버전부터 default 메소드와 static 메소드를 사용할 수 있게 됨 default 메소드와 static 메소드 둘 다 접근제한자를 생략해도 되고, 이 때 public이 됨 default 메소드 구현부(실행 블록)가 있는 메소드 인터페이스 static 메소드 객체 생성 없이 직접 실행 인터페이스는 객체 생성이 불가... APIexceptionJavainterfaceAPI 제 9장. 클래스 수정하고 싶은 변수 우클릭 - refacter - rename(shift + F6) 을 사용하면 수정하는 변수와 같은 모든 변수를 한번에 수정할 수 있다. unit test 화이트박스 + 블랙박스 --> 사용자 관점의 단위 테스트 방법 --> 개발자 관점의 단위 테스트 방법 객체 지향 프로그래밍에서는 모드 데이터를 객체로 취급하며 이러한 객체가 바로 프로그래밍의 중심이 되는데 이 때 객체를 ... JavaJava 22.04.19 연산자 관계 연산자(비교 연산자) > true, false 출력 10 > 100 = false 10 < 100 = true 10 >= 100 = false 10 <= 100 = true 10 == 100 = false 논리 연산자 > true, false 출력 &(and) : 앞(좌)의 값이 이미 거짓이면, 뒤(우)의 값과 상관없이 이미 거짓(false) > 따라서 뒤를 검사할 필요 X > ... JavaJava [알고리즘] Java / 백준 / 텀 프로젝트 / 9466 [알고리즘] Java / 백준 / 텀 프로젝트 / 9466 문제 코드... baekjoonJavaDFSDFS [Java] 기둥과 보 설치 조건문 분기가 굉장히 까다로운 문제 처음에 딱맞는 크기의 배열을 만들었다가 복잡한 분기에 범위처리까지 하려니 너무 복잡해져서 배열의 크기를 늘렸다. 풀이 설명 작업을 순서대로 돌면서 기둥일 때와 보일 때를 분기하고 설치일 때와 삭제일 때를 분기한다. 기둥을 설치할 수 있는 조건 1. 바닥일 때 2. 기둥 위일 때 3. 보 위일 때 기둥을 삭제할 수 없는 조건 1. 위에 기둥이 있으면서 기둥을... Java프로그래머스Java [JAVA] 디자인 패턴 - 싱글톤 (SingleTon) 디자인 패턴이란 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 디자인 패턴은 설계자들이 "올바른" 설계를 "빨리" 만들 수 있도록 도와준다. JAVA에서 많이 사용되는 디자인 패턴 어떤 클래스가 최초 한번만 메모리를 할당하고(Static) 그 메모리에 객체를 만들어 사용하는 디자인 패턴 즉 생성자의 호출이 반복적으로 이뤄져도 실제로 생성되는 객체는 최초 생성된 객체를 반환 해주는 것이... 싱글톤디자인 패턴개념정리JavaJava 22.04.19_자바_String 배열 String 배열도 int 배열과 크게 다르지 않다. 다만 String[]의 경우 참조형변수이기때문에 기본값이 null로 초기화된다. 결과값... arrayStringJavaJava 이전 기사 보기
자바를 잡아버려 (1) 나의 생각을 적고 복습을 해버릴 것 이다 책을 펼치자 마자 나오는 설명인데 그 안의 내용을 실행하게 된다 라고 설명을 해준다 아래 소스코드와 실행 결과로 위에 설명을 보충해준다 사칙연산과 나머지를 계산하는 것 비교연산자 및 논리연산자 산술연산이 아닌 자바의 연산자는 "비교연산자","논리연산자가 있다 이 연산자들은 조건문에 사용해서 조건에 따른 명령을 처리한다 비교연산자 true false 크... JavaJava JPA + QueryDSL 계층형 댓글, 대댓글 구현(2) 이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이 전편에서 만들었던 N+1 문제가 발생하던 로직이다. 만약 부모 댓글의 개수가 100개라면 100번 이상의 쿼리가 나가게 되는 아주 좋지 못한 코드이다..ㅠ 🥲 위의 코드는 게시글... JavaJPASpringbootQuerydslJPA JAVA 공부하기(5) 🧑🏻💻 자바 프로그램은 클래스 선언으로 시작되며, 이 안에서 메소드, 변수, 상수 등을 모두 선언한다. C/C++ 에서 말하는 전역 변수, 전역 함수가 존재할 수 없으며, 이들은 반드시 클래스 내에 캡슐화되어야 한다. 자바에는 boolean, char, byte, short, int, long, float, double 등 8개의 기본 타입이 있다. 큰 데이터 타입에서 작은 데이터 타입으로 타입 변... JavaJava 제 11장. 상속(inheritance) 상속(inheritance) 상속(inheritance)이란 기존의 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다. 상속받는 클래스를 자식 클래스, 하위 클래스 또는 서브 클래스라고 부른다. 상속을 해주는 클래스를 부모 클래스, 상위 클래스 또는 슈퍼 클래스라고 한다. 자식 클래스가 부모 클래스로부터 상속을 받게 되면 부모 클래스의 필드와 메서드를 물려받게 된다... JavaJava AVA - 쓰레드 (3) main메서드의 코드를 수행하는 쓰레드 쓰레드는 '사용자 쓰레드'와 '데몬 쓰레드' 두 종류가 있다. 실행 중인 사용자 쓰레드가 하나도 없을 때 프로그램은 종료된다. 싱글쓰레드 멀티쓰레드 위의 코드는, 사용자로부터 입력을 기다리는 구간동안 아무런 일도 하지 않는다. (동기) 사용자로부터 입력을 기다리는 동안 다른 일을 수행하고 있는다. (비동기)... JavaJava [Spring Framework] 11강 - static file 처리와 File Upload Static web resource 처리 서버의 처리가 필요 없는 static web resources는 요청 시 서버를 거치지 않고 곧바로 응답이 필요 특정 URL로 요청이 오면 static resource로 인식하고 바로 응답 수행 Spring에서도 static resource와 Dynamic resource를 분리하여, static resources 응답을 빠르게 해줄 수 있도록 지원합... 백엔드JavaSpring FrameworkJava [Spring Framework] 10강 - RESTful API 그런데 RESTful API를 쓴 경우는 URL에 행위가 안써져 있고 단순히 특정 데이터 명시가 필요할 경우만 데이터를 명시하고 끝이 납니다. 특정 언어에 종속되지 않으며, 대부분의 프로그래밍 언어에서 JSON 포맷의 데이터를 핸들링 할 수 있는 라이브러리를 제공 Java에서 Jackson 라이브러리 의존성을 추가하면, 별다른 작업 없이 JSON 데이터를 Java 객체로 자동으로 변환시켜줍니... 백엔드JavaSpring FrameworkJava JpaSystemException이 뭐야..? 걸음수에 따른 각 학교별 유저의 랭킹을 매번 조회하기에는 성능 저하가 크기 때문에 일정 간격으로 유저의 랭킹을 데이터베이스에 저장시키는 작업을 한다. 그 중에서도 데이터베이스에 좀 더 초점을 맞췄기 때문에 IdClass를 이용해 복합키를 표현했다. UserRank.java UserRankId.java 이런식으로 JPA에서 제공하는 메소드 쿼리를 이용해 유저 랭킹을 조회한다. 직접 postma... Javaback endSpring bootexception프로젝트trouble shootingJPAJPA [Java] 백준 1543번 [문서 검색] 자바 백준 1543번 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. 예를 들어, 문서가 abababa이고, 그리고 찾으려는 단어가 ababa라면, 세준이의 이 함수는 이 단어를 0번부터 찾을 수 있고, 2번부터도 찾을 수 있다. 그러나 동시에 셀 수는 ... 문자열Java백준algorithmJava JAVA ShoppingMall Project java ShoppingMall Project 쇼핑몰 코드 짜기 전 설계도 관리자 메뉴 클래스 주문하기 메뉴 클래스 메인메뉴 클래스 출력 값 주문하기 출력해보기 장바구니에 담고싶은 물건의 각 번호(1~4)를 입력 -> 자동으로 장바구니에 담깁니다. 장바구니를 비우고 싶을땐 6번을 입력 -> 장바구니안에 있는 모든 상품들이 초기화됩니다. 결제하기 5번 입력 -> 카드/무통장입금 중 결제할 수단... JavaJava 2022/04/19 Java& Spring 공부일기 오늘은 지친 몸을 이끌고 퇴근을 했다.. 너무 힘들었지만 그래도 기능 몇개 개발초석을 다지고.. 집에까지 터덜터덜걸어갔다.. 지방에서 서울로 상경한지 거의 1년이 다되어간다 나는 반지하에 살고 있지만! 다시 고시원으로 갈거다! 왜냐.. 거기는 전기세와 가스비가 무료니까! (핵심) 그리고 생각해보니까 내가 집에서 하는거라곤 잠자기+공부하기+유튜브보기 밖에없었다! 아무튼 각설하고 지친 몸을 이끌... JavaSpringJava 자바 (JRE, JDK, Eclipse : 개발 환경 구축) 자바의 역사 • 1995년 Sun Microsystems 에서 발표했다. • 오라클(Oracle)이 2010년에 Sun Microsystems 를 인수했다. 자바의 특징 1. 객체 지향 프로그래밍(OOP) 언어이다. 자바는 객체 지향 프로그래밍(Object Oriented Programming) 언어이다. • 예외처리 및 컴파일과 런타임 시에 오류를 검사한다. • Open JDK : • Or... JavaJava [백준]2513 통학 버스(자바) 또, 이 아파트 단지 주민을 위해 도로 위 한 지점에 학교 하나를 신설하였다. 각각의 아파트 단지와 학교의 위치는 도로 위의 좌표로 주어지며, 또 각 아파트 단지마다 여기에 사는 학생들의 수도 주어진다. 통학버스는 아침에 학교를 출발하여 각 아파트 단지에 있는 학생들을 태우고 학교로 다시 돌아온다. 아파트 단지 A, B, C가 각각 좌표 0, 2, 5에 있고 이 단지에 사는 학생은 각각 1,... Java알고리즘그리디boj통학 버스자바25132513 Java @SuppressWarnings @SuppressWarnings은 노란색 경고 표시를 제외할때 사용한다. 옵션을 아래와 같이 줄 수 있다. 예시... JavaJava AVA - 쓰레드 (2) Thread클래스를 상속 Runnable 인터페이스를 구현 쓰레드의 실행 - start() 쓰레드를 생성한 후에 start()를 호출해야 쓰레드가 작업을 시작한다. start()와 run()... JavaJava 4일차 java - 변수와 연산자 2) 영문자,숫자,_를 사용할 수 있다. 3) 예약어를 사용할 수 없다(int나 String같은 기능이 있는 단어는 안됨) 4)특수문자, 공백을 사용할 수 없고, 숫자로 변수명이 시작되면 안된다. 자료형(Data Type) 기본 자료형(primitive Type) byte - 1byte short - 2byte int - 4byte long - byte flaot - 4byte double ... 연산자개념JavaJava 빌드 관리 도구 - Maven과 Gradle 빌드 관리 도구 build tool는 빌드를 자동으로 해주는 도구로, 필요한 라이브러리를 자동으로 추가해주고 빌드 라이프사이클을 관리해준다. Java에서 많이 쓰는 빌드 도구는 Maven과 Gradle이 있는데, 예전에는 Maven을 많이 썼지만 요즘은 코드도 더 간결하고 속도도 더 빠른 Gradle을 쓰는 추세라고 한다. Maven은 pom.xml 파일에서 xml 코드를 기반으로 필요한 라... JavaJava [ubuntu] Java 버전 변경 Java 버전 확인 Java 버전 변경 Java 버전 확인... ubuntuJavaJava 백준 Baekjoon 2966번 찍기 - JAVA 문제 상근이, 창영이, 현진이는 역사와 전통을 자랑하는 Sogang ACM-ICPC Team에 가입하려고 한다. 하지만, 가입하려고 하는 모든 지원자는 C언어 필기시험을 통과해야 한다. 이들은 C언어를 할 줄 모른다. 따라서, 필기시험을 모두 찍으려고 한다. 상근이는 A, B, C, A, B, C, A, B, C, A, B, C, ...와 같이 찍어야 통과할 수 있다고 생각한다. 하지만, 창... baekjoonJavaJava 백준 Baekjoon 3004번 체스판 조각- JAVA 문제 상근이는 3003번에서 동혁이가 발견한 체스판을 톱으로 자르려고 한다. 상근이는 체스판을 최대 N번 자를 수 있으며, 변에 평행하게만 자를 수 있다. 또, 자를 때는 체스판의 그 변의 한쪽 끝에서 다른쪽 끝까지 잘라야 한다. 자른 후에는 조각을 이동할 수 없다. 이때, 최대 몇 조각을 낼 수 있는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 100) ... baekjoonJavaJava 제 10장 . 캡슐화(encapsulation) 캡슐화(encapsulation) 이 전까지의 강의로 이제 클래스와 인스턴스를 활용하는 방법으로 현실세계를 객체 지향 프로그램으로 개발 할 수 있게 되었다. 실수로 속성을 덮어 쓰거나 잘못된 조작 하는 등 휴먼 에러를 없애기 위해서 "캡슐화"라는 방법을 이용해 실수를 방지할 수 있다. 간단하게 말해서 중요한 데이터를 쉽게 바꾸지 못하도록 사용한다. 정보 은닉 외부에서 특정 객체의 데이터 및 ... JavaJava [Java] 클래스, 인스턴스, 객체 (2) 메소드 위의 코드를 보면, sum이라는 메소드는 static이라는 키워드를 달게 되면, sum은 클래스 소속의 메소드가 된다. static이 붙어있는 클래스 메소드는 static이 붙어있지 않은 메소드와 다르게 클래스에 접근하여 직접적으로 실행할 수 있다. 위의 코드를 보면, Calculator3라는 클래스에 직접적으로 접근하여 sum이 실행된다. 이는 메모리와 코드를 절약할 수 있게 도와준... eclipseJavaJava [Java]기본26~30강/활용 1~4강 까지의 내용 정리 Java7 버전까진 인터페이스에 상수와 추상 메소드만 사용 가능 Java8 버전부터 default 메소드와 static 메소드를 사용할 수 있게 됨 default 메소드와 static 메소드 둘 다 접근제한자를 생략해도 되고, 이 때 public이 됨 default 메소드 구현부(실행 블록)가 있는 메소드 인터페이스 static 메소드 객체 생성 없이 직접 실행 인터페이스는 객체 생성이 불가... APIexceptionJavainterfaceAPI 제 9장. 클래스 수정하고 싶은 변수 우클릭 - refacter - rename(shift + F6) 을 사용하면 수정하는 변수와 같은 모든 변수를 한번에 수정할 수 있다. unit test 화이트박스 + 블랙박스 --> 사용자 관점의 단위 테스트 방법 --> 개발자 관점의 단위 테스트 방법 객체 지향 프로그래밍에서는 모드 데이터를 객체로 취급하며 이러한 객체가 바로 프로그래밍의 중심이 되는데 이 때 객체를 ... JavaJava 22.04.19 연산자 관계 연산자(비교 연산자) > true, false 출력 10 > 100 = false 10 < 100 = true 10 >= 100 = false 10 <= 100 = true 10 == 100 = false 논리 연산자 > true, false 출력 &(and) : 앞(좌)의 값이 이미 거짓이면, 뒤(우)의 값과 상관없이 이미 거짓(false) > 따라서 뒤를 검사할 필요 X > ... JavaJava [알고리즘] Java / 백준 / 텀 프로젝트 / 9466 [알고리즘] Java / 백준 / 텀 프로젝트 / 9466 문제 코드... baekjoonJavaDFSDFS [Java] 기둥과 보 설치 조건문 분기가 굉장히 까다로운 문제 처음에 딱맞는 크기의 배열을 만들었다가 복잡한 분기에 범위처리까지 하려니 너무 복잡해져서 배열의 크기를 늘렸다. 풀이 설명 작업을 순서대로 돌면서 기둥일 때와 보일 때를 분기하고 설치일 때와 삭제일 때를 분기한다. 기둥을 설치할 수 있는 조건 1. 바닥일 때 2. 기둥 위일 때 3. 보 위일 때 기둥을 삭제할 수 없는 조건 1. 위에 기둥이 있으면서 기둥을... Java프로그래머스Java [JAVA] 디자인 패턴 - 싱글톤 (SingleTon) 디자인 패턴이란 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 디자인 패턴은 설계자들이 "올바른" 설계를 "빨리" 만들 수 있도록 도와준다. JAVA에서 많이 사용되는 디자인 패턴 어떤 클래스가 최초 한번만 메모리를 할당하고(Static) 그 메모리에 객체를 만들어 사용하는 디자인 패턴 즉 생성자의 호출이 반복적으로 이뤄져도 실제로 생성되는 객체는 최초 생성된 객체를 반환 해주는 것이... 싱글톤디자인 패턴개념정리JavaJava 22.04.19_자바_String 배열 String 배열도 int 배열과 크게 다르지 않다. 다만 String[]의 경우 참조형변수이기때문에 기본값이 null로 초기화된다. 결과값... arrayStringJavaJava 이전 기사 보기