일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바 #java
- BFS
- java #자바 #생활코딩
- DFS
- Dijkstra
- 코딩테스트
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- 다이나믹프로그래밍
- 다익스트라
- react #리액트 #동빈나
- PYTHON
- css #웹 #생활코딩
- 파이썬
- 프로그래머스
- java #자바 #동빈나
- java #자바 #나동빈
- css #생활코딩 #웹
- 백준 #파이썬 #알고리즘 #코딩테스트
- java #자바
- 알고리즘
- dp
- 투포인터
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- 백트랙킹
- 재귀
- react #리액트 #동빈나 #나동빈 #유튜브강의
- 백준 #알고리즘 #파이썬 #코딩테스트
- 백준
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- 파이썬 #백준 #알고리즘 #코딩테스트
- Today
- Total
목록
728x90
자바
728x90
(64)
커리까지
1. 인터페이스 정의하는 방법 interface 키워드를 이용하여 선언 반드시 상수와 추상 메소드만 사용 가능 package test.exam public interface Speak { String lang = korea; void setLang(String typeLang); } 인터페이스는 개발 시간을 단축할 수 있음 확장도 용이하며 클래스 간의 변경에 영향을 미치지 않음 2. 인터페이스 구현하는 방법 package test.exam public class People implements Speak { private String lang; @Override public void setLang(String lang){ this.lang = lang; } public String getLang() { ..
1. package 키워드 클래스를 구분 짓는 폴더의 개념 클래스와 인터페이스의 집합 사용할 때에는 아래와 같이 package를 선언하면 된다. package java.aaa.bbb.* java.aaa.bbb의 모든 클래스를 가져온다는 뜻이다. 2. import 키워드 패키지를 사용하려면 이름 앞에 패키지의 경로까지 포함하여 작성해야 함 하지만 이렇게 선언하는 것은 비효율적이기 때문에 자바에서 import를 별도로 제공함 import를 사용하면 패지키 이름을 제외하고 클래스 이름만 사용가능 import 패키지이름.클래스이름; 패키지에서 특정 클래스만 사용하려면 위와 같이 특정 클래스를 불러옴 import 패키지이름.* 해당 패키지의 모든 클래스를 사용하려면 위와 같이 *를 사용하여 불러옴 자바의 java..
1. 자바 상속의 특징 상속의 개념 부모가 자식에게 물려주는 행위 상위(부모)클래스의 멤버를 하위(자식)클래스에 물려주는 것 클래스의 변수와 메소드를 사용하는 것 장점 코드의 중복 감소 유지 보수 시간도 감소 특징 선택적 상속이 불가능 상속되는 클래스의 속성 혹은 기능을 선택적으로 상속받을 수 없음 전부 상속받거나 혹은 아예 상속받지 않거나 해야함 단일 상속만 가능 다중 상속의 경우 문제가 생길 수 있어서 자바 시스템에서 지원하지 않음 필요없는 부분까지 받기 때문에 무거워져서 자바는 인터페이스 다중 구현을 제공함 생성자는 상속되지 않음 생성자는 클래스 이름과 동일하게 써야 하는데 상속을 하게 되면 클래스 이름이 달라지기 때문에 클래스 이름과 동일하게 사용할 수 없음 대신 super(a,b)처럼 호출은 가..
클래스 정의하는 방법 접근 제어자와 함께 class 키워드를 사용한다. 접근제어자 class 클래스 이름{ 접근제어자 필드1의타입 필드1의 이름; ... 접근제어자 메소드1의 원형 }(접근제어자) (키워드) (클래스 이름) public class Car{ (클래스 필드) private String modelName; private int modelYear; (클래스 메소드) public void brake(); } 접근 제어자는 객체 지향 프로그래밍의 특징 중 하나인 정보 은닉을 위한 키워드다. pbulic은 모든 객체에서 접근 할 수 있지만, private는 해당 객체 내의 멤버 변수나 메소드만 접근할 수 있다. 객체 만드는 방법 (new 키워드 이해하기) public static void main(S..
선택문 1. if - then 가장 기본적인 제어문중 하나로 지정한 조건이 만족할 시에 지정한 블록안에 있는 코드가 실행된다. if(조건문) { 조건이 참일 때 실행되는 코드 } 조건이 한줄일 경우 {}를 생략해도 된다. if(조건문) 조건이 참일 때 실행되는 코드2. if - then - else 기본적인 if-then은 참일 경우에만 실행되었다면, if-then-else는 거짓일 때도 실행할 수 있다. if(조건식){ 조건이 참일 때 실행되는 코드 }else{ 조건이 거짓일 때 실행되는 코드 }3.switch 변수에 대해 평가하고 이를 분기할 수 있다. 변수는 원시형 타입(int, char...)일 수도 있고 String, Wrapper(Integer, Byte, Character...) 클래스도 가..
산술 연산자 산술 연산자 종류 구분 연산자 의미 산술연산자 + 더하기 - 빼기 * 곱하기 / 나누기 % 나머지 값 구하기 비트 연산자 데이터를 비트 단위로 연산 0과 1로 표현이 가능한 정수 타입이나 정수형으로 캐스팅이 가능한 자료형만 비트 연산 가능 비트 연산자 종류 연산식 설명 예시 x y 정수 x의 각 비트를 y만큼 오른쪽이로 이동시킨다.(빈자리는 정수 a의 최상위 부호 비트와 같은 값으로 채워진다.) x >>> y 정수 x의 각 비트를 y만큼 오른쪽으로 이동시킨다.(빈자리는 0으로 채워진다.) ~ 비트의 반전(1의 보수) a = ~a & 비트 단위 AND 1 & 1 1반환 그 외는 0 | 비트 단위 OR 0|0 0반환 그 외는 1 ^ 비트 단위 XOR 두개의 비트가 서로 다른 경우에 1을 반환 예..
프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입은 기본형으로도 불리며 논리형과 숫자형 문자열형 등의 기본적인 데이터 타입이다. 자바의 기본 타입으로서 정수, 실수, 문자, 논리 리터럴을 직접 저장하는 타입이다. 값의 종류 기본 타입 메모리 사용 크기 저장되는 값의 범위 정수 byte 1 byte 8 byte -27 ~ (27 - 1)(-128 ~ 127) char 2 byte 16 bit 0 ~ 216 -1(유티코드 \u0000 ~ \uFFFF, 0 ~ 65535) short 2 byte 16 bit -215 ~ (215 -1)(-32,768 ~ 32,767) int 4 byte 32 bit -231 ~ (231 -1)(-2,147,483,648 ~ 2,147,483,647) long ..
1. JVM이란 무엇인가 Java Virtual Machine의 줄임말 Java Byte Code를 OS에 맞게 해석해주는 역할을 함 Byte Code는 기계어가 아니기 때문에 OS에서 바로 실행되지 않음 JVM이 Byte Code를 이해할 수 있도록 해석해줌 즉, OS에 구애받지 않고 JAVA를 재사용 가능하게 함 메모리관리, Garbage, collection을 수행함 2. 컴파일 하는 방법 시스템 환경변수에 자바 bin url을 등록한다. .java 파일을 javac로 컴파일 한다. javac는 자바 컴파일러로 자바로 작성된 소스코드를 바이트코드로 변환함 생성된 .class 파일을 java 클래스명으로 컴파일한다. 그러면 class 파일이 실행된다. 3. 실행하는 방법 1. 프로그램이 실행되면 JV..
생성자 생성자를 하나도 제공하지 않으면 기본 생성자 제공 new 키워드와 함께 사용 됨 객체를 생성할 때만 사용 반환값이 없고 클래스 이름과 동일 외부에서 접근하지 않으려고 private로 선언할 수 있음 기본 생성자 public Std() 클래스에 적어도 하나 이상의 생성자가 존재햐야 함 생성자와 동일하게 반환값이 없음 public class Student { public int studentNumber; public String studentName; public int grade; public String showStudentInfo() { return studentName + "학생의 번호는 : " + studentNumber + "이고 학년은 : " + grade + "입니다."; } } 멤버변..