본문 바로가기

전체 글84

[JAVA/자바] length, length(), size 의 사용법/차이 자바에서 길이를 반환할 때 length, length(), size가 있어서 헷갈리기 쉽다. 그러기에 차이를 제대로 이해하고 사용해야 한다. length - length는 배열( [ ] )의 길이를 반환 length() - length()는 String 문자열의 길이를 반환 size() - size()는 ArrayList, Set 등 메모리의 실제 사용되는 크기를 반환 2022. 11. 6.
스프링 부트(Spring Boot), Maven, Gradle 이란? Spring Boot (스프링 부트)란? 스프링 부트는 스프링의 프로젝트 중 하나입니다. 간단하게는 스프링을 더 쉽게 사용하기 위한 도구라고 할 수 있습니다. Spring을 사용해보신 분들은 아시겠지만 초기 환경 설정 시 세팅해야 할 요소들이 많아서 골머리를 앓기 일 수입니다. 이러한 단점을 보안하기 위해 나온 것이 SpringBoot입니다. 간편한 세팅으로 현재 많은 분들이 SpringBoot를 이용해서 개발을 하고 있습니다. 스프링 부트를 사용하게 되면 서버가 내장되어있습니다. 스타터(Starter)를 사용하여 많이 사용하는 라이브러리를 등록해 메이븐 관리가 원활합니다. 스프링 부트를 사용하게 되면 스프링 라이브러리와 서드파티 라이브러리들을 호환이 맞게 버전을 다운해줍니다. (라이브러리 버전이 달라 .. 2022. 11. 2.
깃허브(Github)로 백준, 프로그래머스 알고리즘 소스코드 관리하기 백준 알고리즘이나 프로그래머스 등에서 코딩 테스트 문제를 풀 때, 소스코드를 깃허브(GitHub)에서 관리하는 방법입니다. 깃허브(GitHub) 1. 당연히 깃허브에 로그인을 한 상태여야 합니다. 로그인을 하면 Repository(소스코드 저장소)를 생성할 수 있습니다. Repository에서 New를 눌러주세요. 2. 다음은 레포지터리를 만드는 화면이 나옵니다. Repository name와 Description은 개인이 알아서 작성해주시면 됩니다. Description은 작성하지 않아도 되며 저는 프로그래머스에서 문제를 풀기 때문에 Repository name을 Programmers로 하였습니다. 3. 생성이 완료되면 깃 주소(https://github.com/PARK-SHIN/Programmers... 2022. 11. 2.
[Github, Git] init, remote add, commit, push 용어 정리 git init git init 명령어를 실행하면, 현재 디렉토리를 기준으로 Git 저장소가 생성됩니다. (로컬 저장소 생성) git add README.md 로컬 저장소에 파일을 올려주는 것입니다. 모든 파일을 push 할 때는 git add .을 해주시면 됩니다. 특정파일을 push할때는 add [파일명 or 폴더명]으로 해주시면 됩니다. git commit -m "first commit" "first commit"은 Push를 해줄시 전달할 메시지입니다. git remote add origin https://github.com/PARK-SHIN/PARKSHIN.git 로컬 저장소에서 어떤 원격 저장소를 바라볼지 설정 (원격저장소를 git에 등록) git push -u origin master com.. 2022. 11. 2.
[JAVA/자바] interface (인터페이스) - 다중 상속 인터페이스의 역할 인터페이스를 사용하는 객체가 있을 때 그 객체는 반드시 인터페이스의 메소드들을 구현하도록 제약을 걸어주는 것이다. (동일한 기능을 강제적으로 수행), 규격을 엄격하게 준수할 수 있도록 할 수 있습니다. 인터페이스 선언 모든 인터페이스의 멤버는 public이다. 또한 인터페이스에서 가지는 상수, 추상메소드 각각 앞에 붙는 public static final, public abstract는 생략이 가능하다. 인터페이스는 추상클래스와 다르게 함수가 존재한다는것만 알려주어야 한다. { } 사용 X 이후 클래스가 인터페이스 상속받을때 구체적으로 구현하여야 한다. 인터페이스 상속, 구현 추상 클래스는 상속할 때 extends를 썼지만 implements를 사용한다. 코드를 보면 class Anim.. 2022. 11. 2.
[JAVA/자바] final - 변수, 메소드, 클래스에서 사용방법 final - 절대로 변하지 않는 것을 정할 때는 final을 사용한다. - 변수, 메소드, 클래스 모두에서 사용할 수 있다. - 변수와 메소드에서는 재정의가 불가능 해지며 클래스에서는 상속이 불가능해진다. ○ 변수 변수를 만들어 줄때 앞에 final을 붙여주고 위와 같이 다시 재정의 해주면 Error. ○ 메소드 Child 클래스가 Parent 클래스를 상속받고 있는 코드. 오른쪽 코드는 Parent Class의 print method에서 final을 썼다. 그래서 Child class에서 상속받은 print method를 재정의하려 했지만 되지 않는다. ○ 클래스 Child 클래스가 Parent 클래스를 상속받고 있는 코드. 오른쪽 코드는 Parent Class에서 앞에 final을 썼다. 클래스에 .. 2022. 11. 2.
[JAVA/자바] abstract 추상 클래스 - 오버라이딩 추상 - abstract 추상은 실체 간의 공통되는 특성이나 속성을 추출한 것을 말한다. 예를 들어 고양이, 개, 호랑이의 공통되는 특성은 동물이다. 이와 같이 구체적인 실체가 아니라 공통되는 특성이 추상적인 것이다. 실체 클래스 = 객체를 직접 생성할 수 있는 클래스 추상 클래스 = 실체 클래스들의 공통적인 특성을 추출해서 선언한 클래스 추상 클래스와 실체 클래스는 상속관계이다. (상속해서 사용하도록 강제한다.) 추상 클래스가 부모이고 실체 클래스는 자식관계이며 실체 클래스는 추상 클래스의 특성(필드, 메서드)을 물려받고, 추가적으로 특성을 가질 수 있다. ○ 추상 클래스 선언 sound라는 추상 메소드를 가지고 있기에 클래스 앞에 'abstract'를 써서 추상 클래스를 만든다. 추상 메소드는 메소드.. 2022. 11. 2.
[JAVA/자바] 배열 Array - new 연산자 배열생성 방법 배열 변수는 한 개의 데이터만 저장할 수 있다. 하지만 배열을 사용하면 많은 양의 데이터를 공간에 담아서 사용됩니다. 다음은 길이가 5인 int형 배열을 생성한 것입니다. (5개의 데이터를 담을 수 있는 공간) 배열의 순서(인덱스)를 말할때는 0부터 시작한다. 길이가 5인 배열을 생성했기 때문에 array [0] ~ array [4]까지 값이 저장될 수 있는 공간이 있는 것이다. 각 공간에 데이터가 순서대로 저장된다. 배열 예제 9 ~ 10 코드 : 사용자로부터 과목 수를 입력받아서 과목수만큼 배열을 만들어 준것. 13 ~ 15 코드 : 이후 사용자로부터 받은 점수를 exam[0] ~ exam[n]에 저장. 17 ~ 20 코드 : 점수를 다 더해서 변수 sum에 넣어줌. 21 코드 : sum을 과목 수로.. 2022. 11. 2.
[JAVA/자바] - Scanner 클래스 ( 사용법, next, nextLine) Scanner Scanner클래스를 사용하면 사용자와 상호작용할 수 있다. Scanner sc = new Scanner(System.in); 을 사용해서 클래스 객체를 생성한다. 자바에서 제공하는 라이브러리를 가져오기 위해서는 import를 해준것이다. System.in = 콘솔창에서 입력한 데이터 sc nextln( )를 통해 사용자가 입력한 int형 데이터를 i에 넣어주었다. 입력 받은 데이터는 내부적으로 어떠한 처리를 한 뒤에 다시 사용자에게 그 값을 반환할 수 있습니다. sc.close( ); = 입출력을 닫아줌으로써 프로그램을 종료시킨다. 출력 (123을 사용자가 입력했다는 가정) 정수를 입력하세요 : 123 입력된 정수는 123 입니다. File 입출력 input.txt에 있는 정수에 각각 1.. 2022. 11. 2.