JAVA
-
정규표현식,Arrays,java.lang 패키지JAVA 2021. 7. 23. 10:00
정규표현식(RegularExpression) 작성 방법 문자열이 정해져 있는 형식으로 구성되어 있는지 검증할 때 사용 문자또는 숫자 기호와 반복 기호가 결합된 문자열 1. [] : 한개의 문자, [abc]는 a,b,c중 하나의 문자, [^abc]는 a,b,c이외의 문자를 의미 2. \d : 한개의 숫자 [0-9]와 동일 3. \w : 한개의 알파벳문자 또는 한개의 숫자 [a-zA-Z_0-9] 4. \s : 공백 5. ? : 없거나 한개 6. * : 없거나 한개이상 7. + : 한개이상 8. {n}: n개의 문자 9. {n,}: 최소한 n개 10. {n,m} : n개부터 m개까지 11. () : 그룹핑 12. ^ : 문자열의 시작 13. $ : 문자열의 종료 [자주 쓰이는 패턴] 1) 숫자만 :..
-
java.lang.Object 클래스JAVA 2021. 7. 23. 09:51
1. Object 클래스 1) hashCode() 객체의 해시코드 객체의 해시코드란? 객체를 식별하는 하나의 정수값을 말한다. Object의 hashCode()메서드는 객체의 메모리번지를 이용해서 정수값인 해시코드를 만들어 리턴하기 때문에 객체마다 다른 값을 가지고 있다. 논리적으로 동등비교시 hashCode()를 재정의할 필요성이 있는 컬렉션프레임 워크에서 HastSet, HashMap, HashTable은 equals()메서드를 이용해서 비교한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class Key { public int number; public Key(int number) { this.number = number; } @Override pu..
-
인터페이스, 내부클래스, 예외JAVA 2021. 7. 23. 09:33
interface 두번째 인터페이스끼리 상속하는 이유? 설계도인 인터페이스들을 메서드의 기능을 다 다르게하여 부품화시키고 상속받는 인터페이스는 건드리지 않고 기능을 추가 삭제 가능하다. default 메서드: 예를 들어 기존에 인터페이스를 구현한 클래스 말고 새로 그 기능을 구현할 새로운 클래스가 생겼는데 그 클래스를 위해 추가로 메서드를 생성시 기존의 클래스에 영향이 가지 않도록 default 메서드를 생성해 이 인터페이스를 사용한다면 기본으로 사용 할 수 있는 메서드를 제공한다.(default 메서드는 인터페이스에서 구현해야한다!!) 디폴트메서드는 오버라이딩도 가능하기 때문에 사용할 클래스에서 고쳐쓰는게 가능하다. 상속받은 default 메서드를 자식인터페이스에서 다시 추상메서드로 바꾸는 오버..
-
상속, instanceof, 추상, interfaceJAVA 2021. 7. 22. 22:56
상속 inheritance 타입변환과 다형성 다형성이란 같은 타입이지만 실행결과가 다향한 형태, 객체를 이용할 수 있는 성질을 말한다. 프로그램측면에서 보면 다형성은 하나의 타입에 여러객체를 대입함으로서 다양한 기능을 수행 할 수 있도록 한다. 다형성을 위해서 자바는 자식클래스가 부모클래스로 타입변환을 허용한다. 즉, 부모타입에 모든 자식객체들은 대입이 될 수가 있다. 이 기능을 이용하면 객체는 부품화가 가능하다. 타입변환이란 데이터타입을 다른 데이터 타입으로 변환하는 행위를 말한다. 기본 데이터 타입의 변환처럼 참조타입(class등)도 타입변환이 가능하다. 클래스타입변환은 직접적인 상속관계가 있는 클래스 사이에 발생한다. 자동타입변환(promotion)은 프로그램 실행도중에 자동적으로 타..
-
set,get,상속,overriding & overloadingJAVA 2021. 7. 22. 22:45
set&get class의 생성자를 만들었지만 필드가 private으로 접근 불가한 경우 set과 get메서드를 만들어 세팅할 수 있다.(boolean형은 set이 아닌 is로 관례상 사용한다.) 오른쪽마우스 -> source -> generate getter setter : 자동으로 set,get메서드가 만들어진다. 사용하는 이유?: 메서드로 접근하게 하면 메서드안에 조건을 달아서 변수를 설정하게 할 수 있다. 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 package com.lack206.ex10_get_set; public class Car { //필드 private int speed = 100; pri..
-
메서드,싱글톤,static,상수JAVA 2021. 7. 22. 22:34
메서드 메서드는 객체의 동작(기능)에 해당하는 중괄호{} 블럭이다. 중괄호 블럭은 이름을 가지고 있는데 이것이 메서드 이름이다. 메서드를 호출하게 * 되면 이 중괄호 블럭에 정의돼 실행문들이 일괄적으로 실행하게 된다. 메서드는 1) 필드를 읽거나 수정 2) 다른 객체를 생성해서 다양한 기능을 수행하기도 한다. 메서드는 객체간의 데이터 전달의 수단으로 사용된다. 메서드는 외부로부터 매개값을 전달 받을 수 있고 실행한 후의 임의의 값을 전달할 수 있다. 1. 메서드의 선언 메서드의 선언은 선언부와 실행블럭으로 구성된다. 선언부에는 리턴타입, 메서드이름 매개변수등을 선언하고 메서드선언부를 메서드 시그니처(signature)라고도 한다. 2. 리턴타입 리턴타입은 메서드가 실행한 후 리턴하는 값의 데이터타입을 말..
-
static main, 접근제한자, 싱글톤정의JAVA 2021. 7. 22. 22:24
static & main public static void main(String[] args)}{} static인 메인함수는 클래스마다 하나씩만 가질 수 있는데 static이기 때문에 method(static)영역으로 자바 시작시 모든 스레드가 공유하는 함수다. (method 영역의 값들은 자바 실행시 생성되어 있다. 클래스의 필드와 메서드는 생성자를 생성해야 heap영역에 올라온다. 그러고나서 main에서 사용 가능하다.) 접근제한자 접근제한자 모든 클래스(모든 패키지) 상속관계 동일패키지 동일 클래스 public O O O O protected X O O O (default) X X O O private X X X O 싱글톤(singleton) 프로그램에서 단 한개의 객체만 생성하도록 해야 하는 경우..
-
java 및 객체의 정의JAVA 2021. 7. 22. 22:15
compile 언어 :java, c, c++ etc source code -> compiler -> 기계어 a = a+1 -> compiler -> 010101 (script 언어 :javascript, phython, R etc 위에서 아래로 순서대로 작동) 개발tool eclipse,vs(visual studio), notepade etc java의 compiler는 javaC JDK: jdk를 깔면 jre도 깔린다. 개발자들이 소스 만들때는 jdk를 다운받는다. = javac.exe, java.exe JRE: java only run 자바를 실행만 한다면 jre만 다운받아도 된다. = java.exe java는 window,mac,linux등 os를 옮길 때마다 다시 해독해서 컴파..