1. JAVA/3). 자바_개념 32

자바_개념_Day_33

List 와 ArrayList 차이 : List의 자식 vector,arrayList 라든지, 자식들이 다 올 수 있다. 만약, arrayList로 만들었는데, vector로 바꿔야 한다면, 부모자식인 List로 만들어준다면, 나머지는 문제 없이 사용할 수가 있다. JDBC - Table과 연결 ◐arrayList :단일쓰레드 = ArrayListExam01 ◐vector : 멀티쓰레드 = VectorExam ◐LinkedList LinkedList = 손에 손을 맞잡는다. # list안에 각 index 는 값을 담고 있는 것이 아니라, 주소를 담고 있다. # 링크드리스트 장점 (앞에 다찾아가바야한다.)검색을 할떄는 느지만, 추가삭제는 빠르다 추가하고 삭제할떄, 중간점만 끊어버리고, 뒤쪽이나, 그런내용이..

자바_개념_Day_32

컬렉션프레임 API collection List collection(인터페이스)을 상속받고 있는 List(인터페이스) E: 요소로 받겟다. 부모클래스 collection, Iterable collection framework : 자료구조와 관련있습니다. 자료구조 : 데이터를 어떻게 다룰 것인가라는 것입니다. API : 라이브러리(미리틀을 만들다) collection 인터페이스 set,list, map # hashset : hash코드와 관련된다 (hash는 중복을 체크한다라는 의미가있다.) treeset : 정렬이 되는 것들 # map은 list와 set과 다르게 map(key와 value로 처리) - ex) ip와password # arraylist와 vector의 차이점 멀티쓰레드환경 : vector..

자바_개념_Day_31

실제 작업을 하는 곳 cpu는 쓰레드하고만 이야기 쓰레드는 실제로 작업을 하는 것 프로세스의 자원을 이용해서 데이터, 메모리, 자원등을 이용해서 실제 작업을 수행하는 것 cpu를 사용하는 최소 단위 #멀티쓰레드 1프로세스 다중 쓰레드 # 쓰레드보다 코어가 작을 경우 쓰레드를 잘게 쪼개서, 라운드로빙방식(RR방식) 쓰레드보다 코어가 많을 경우 # JVM - main - mainThread - # 다른 클래스에 존재하는 메소드를 간단히 사용하는 법 import static을 활용해서 사용한다. throws //s자 - 던진다. 나를 던진고 자기를 호출한 곳에서 인터럽트인셉션을 떠넘긴다. thow // s자 안붙음 이 뒤에 있는 곳에 예외를 만들어서 실행해라. 스레드생명주기 5. 쓰레드의 동기화 - 임계영역(..

자바_개념_Day_30

◐쓰레드(520p) ◐ 람다식 파일입출력 프로세스 : 실행중에 있는, 메모리에서 올라와져 있는 로딩된 프로그램 프로세서와 프로세스는 다르다 1. program : C드라이브에 설치된 소프트웨어 process : 실행 중인 프로그램, 메모리에 로딩된 프로그램 하나 - single process, 두개이상 - Multi process 프로세스는 적어도 하나의 스레드를 가진다. (프로세스는 cpu를 사용하는 최소단위) cpu는 쓰레드랑 소통한다. processor : 프로세서(processor)는 프로세스를 실행하는 주체이다. Thread : 하나의 실행 흐름으로 프로세스 내부에 존재 2. 쓰레드의 동시성(concurrency)과 병렬성(parallelism) -단일 thread로 2개의 작업을 처리할 때 각..

자바_개념_Day_29

제네릭 똑같은 작업 계속하는데… ★넣는 순간★ 타입을 결정하자 공통메소드 처리하는데, : 다이아몬드 연산(안에 타입을 점검한다) 일반 T 배열 E 키값 K,V 숫자 N 컴파일할때 타입을 점검하기 떄문에, 실행 도중 발생할 오류를 미리 방지할 수 있다. 불필요한 타입 변환이 없어 프로그램 성능이 향상된다. 컬렉션프레임워크 ★제네릭타입 2개이상일떄, ★ 제네릭 상속 및 타입한정 인터페이스도 extends로 접근해야된다. T extends 인터페이스 반환타입 메서드명 () {} T extends 특정 클래스 반환타입 메서드명 () {} ㅡㅡㅡ public class Animal { private V name; private K age; public V getName() { return name; } publi..

자바_개념_Day_27

모든 예외의 부모클래스 해쉬코드 : 고유의 값 toString : 주소값을 보여준다. 객체를 만들고, hashcode() 주소값, 원칙은 주소값 hashcode > equals() > true; >다르면 > false 주소값이 다르면, 다른 객체, 1.주소가 같은지, 2.값이 같은지 hashcode, equals 해쉬코드 생성 ㅡㅡㅡ public class Cat { String name; public Cat(String name) { super(); this.name = name; } } public class Dog { String name ; public Dog(String name) { super(); this.name = name; int id; } @Override public String t..

자바_개념_Day_26

*예외처리 p440~512p 모든 클래스는 Object에 담긴다. 그런데, 문제는 담기지말아야할 잘못된 것이 담길수가 있다. 개발자가 어떻게 못하는 에러부분 1. Exception과 Error의 차이점 1) Error : 프로그램 코드에 의해서 수습할 수 없는 심각한 오류 메모리 부족, thread 죽음, …. (개발자가 손댈 수 없는 영역) 2) Exception : 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 발생하는 프로그램 오류, 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 (개발자가 손댈 수 있는 영역) 2. 예외 클래스의 일반예외, 실행예외 일반 예외(Checked Exception) : 컴파일 전에 체크, 컴파일자체가 불가 Exception ClassNotFoundExce..

자바_개념_Day_25

복습 필드 - private 외부에서 가져다가 사용x getter,setter - private 외부에서 가져다가 사용x 생성자 - private 외부에서 생성못하게 계산 - private 외부에서 노출안시키는것 1. day24 완성 : package exam1_02_tea; public class Customer { //총2개로 분할해서 하는것이 좋다. (지금은 보여주기로, 하나로한다.) // 아이디 관련 클래스1개 // 고객아이디 // 고객명 // 등급 //계산 관련하는 클래스1개 // 보너스 포인트 // 결제 금액 // 적립금 // 할인율 //#1. 필드 private String id; //고객아이디 private String name; //고객명 private Grade grade; //등급 i..

자바_개념_Day_24

◐ 1) 추상클래스 어제 냈었떤, 도형문제 풀이 파일명 : exam1_01_01_tea 1.Shape만들기 Point, Rectangle, Lines 3개 클래스 생성 후 Shape로 상속받기 VerticalLine > Lines 상속받기 HorizonLine > Lines 상속받기 *실행클래스 ShapesMain 생성 피드백 1.문제에 대한 이해도가 부족하면, 코드의 구조라든가, 많이 부족해진다. (입력,구동원리,출력) #접근제한자 public 부르고 고치고ok protected 같은 클래스에서 사용 외부패키지는 자식만 부르고 고치고ok default 같은 클래스 부르고 고치고 ok private 자기클래스만 부르고 고치ok final : 같은 클래스에서도 안댄다. 읽기만 가능. 제한 최종 static..

자바_개념_Day_23

내것이 되기까지, 노력하지않는다라는 것을 모른다.. 자기객관화가 안되어 있다. ●추상vs상속 상속 1.공통으로 사용 2.부모 것은 내것 //★다형성으로 이용해서 코드를 줄이기 상속에서 부모와 자식을 메인에서 제어하는 법 1) 자식에서 부모의것을 사용하고 싶을때, (super) 2) 자식의 것을 사용하는 법 자식 - > 부모 - > 자식 (돌아오는법) if(ani[i] instanceof Dog dog)}{ } 추상을 쓰는 이유 ‘강제성’을 주기위함도 있다. 반드시 재구현을 해야하는 것들이 있는 경우.(자식에게 맞춰서) # //추상클래스도 필드,생성자,일반메소드 올수있다. //부모안에 필드와 생성자가 생성되면, //1)기본생성자를 부모안에 넣는다. //2)자식클래스 생성자안에 super로 생성자의 전달인자..