일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 배열
- html
- FastAPI
- Android
- servlet
- pyqt
- 생활코딩
- 단축키
- Oracle
- Homebrew
- ibatis
- 대덕인재개발원
- crud
- Error
- 객체지향
- JDBC
- 반복문
- 이클립스
- 자바
- Java
- ddit
- API
- 맥
- python
- Mac
- nodejs
- spring
- jsp
- 컬렉션프레임워크
- 자바문제
- Today
- Total
목록JAVA/개념정리 (44)
romworld
package kr.or.ddit.basic; import java.util.HashSet; public class EqualsHashCodeTest { public static void main(String[] args) { Person p1 = new Person(); p1.setNum(1); p1.setName("홍길동"); Person p2 = new Person(); //p2.setNum(2); //p2.setName("이순신"); p2.setNum(1); p2.setName("홍길동"); Person p3 = p1; System.out.println(p1 == p2); // false 주소값 비교 System.out.println(p1.equals(p2)); // false object에는 e..
1) package kr.or.ddit.basic; import java.util.ArrayList; public class ArrayList01 { public static void main(String[] args) { // ArrayList는 기본적인 사용법이 Vector와 같다. ArrayList list1 = new ArrayList(); // add()메서드를 이용해서 추가한다. list1.add("aaa"); list1.add("bbb"); list1.add(123); list1.add("k"); list1.add(true); list1.add(123.45); //System.out.println("list1 => " + list1.toString()); System.out.println("..
package kr.or.ddit.basic; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; /* * - 정렬과 관련된 interface는 Comparable, Comparator 이렇게 두 가지가 있다. * * - Comparable은 Collection에 추가되는 데이터 자체에 정렬 기준을 넣고 싶을 때 구현하는 인터페이스다. * (즉, 내부 정렬 기준을 구현할 때 사용한다.) * - Comparator는 외부에 별도로 정렬 기준을 구현하고 싶을 때 구현하는 인터페이스이다. * (즉, 외부 정렬 기준을 구현할 때 사용한다.) * * - Comparable에서는 compareTo()메서드를 재정..
package i_jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class JDBC { /* * JDBC(Java Database Connectivity) - 자바와 데이터베이스를 연결해주는 외부 라이브러리 - ojdbc : 오라클 * JDBC */ // JDBC 작성 단계 // 0. 데이터베이스 접속 정보 입력 // 1. Connection 생성 // 2. Statement 생성 (쿼리 Query 생성) // 3. Statement 실행 (쿼리 실행) // 4..
package kr.or.ddit.collection; import java.sql.ResultSetMetaData; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import java.util.Vector; public class CollectionTest { public static void main(String[] args) { /* * ..
package g_api; public class StringSpeedTest { // 문자열을 사용하는 방법에는 String 객체와 StringBuffer 객체가 있다. // 다양한 장단점이 있지만 속도만 보자 public static void main(String[] args) { String str = "a"; long start = System.currentTimeMillis(); for(int i = 0; i < 20000; i++) { str += "a"; } long end = System.currentTimeMillis(); System.out.println("String 객체 : " + (end - start) + "ms"); // 속도가 훨씬 빠름 대신에 이거는 + 대신 append로 ..
package f_exception; import java.util.concurrent.TimeUnit; import e_oop.ScanUtil; public class ExceptionHandling { /* * 에러 * - 컴파일 에러 : 컴파일 시에 발생되는 에러(빨간줄) * - 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 에러(버그) * - 런타임 에러 : 실행시에 발생되는 에러 * * 런타임 에러 * - 런타임 에러 발생 시 발생한 위치에서 프로그램이 비정상적으로 종료된다. * - 에러 : 프로그램코드에 의해 수습될 수 없는 심각한 오류(처리 불가) * - 예외 : 프로그램코드에 의해서 수습될 수 있는 다소 미약한 오류 (처리 가능) * * 예외 * - 모든 예외는 Exception ..
추상메서드 abstract 선언부만 있고 구현부는 없는 메서드 메서드의 이름만 정의해놓고 형태가 없음 { } 블럭이 없음 추상클래스를 상속받으면 추상클래스 안에 있는 추상 메서드를 반드시 재정의 해야한다. (override) 1. 생성자를 정의할 수 있다 2. 단독으로 인스턴스 생성할 수 없다 3. abstract 선언을 해야한다 4. private 지시자를 선언할 수 없다 5. 확장하는 클래스는 abstract 매서드를 반드시 override 해야한다! 인터페이스 interface 인터페이스는 추상 클래스 메서드를 제공한다 인터페이스 내에 선언하는 변수는 모두 public static final 이고 그래서 생략 가능하다. public class Retriever implements Dog { publ..