Java 개념

· Java 개념
다형성? 하나의 객체가 여러가지 형태를 가질 수 있는 것을 의미한다. 다형성의 예시 import array.Calculator; import pholimolphysm.CProgramer; import pholimolphysm.JavaProgramer; import pholimolphysm.Programer; public class Main { public static void main(String[] args) { JavaProgramer java = new JavaProgramer(); CProgramer c = new CProgramer(); writeCode(java); // 자바 프로그램 만들기 writeCode(c); // C언어 프로그래 만들기 } public static void writeC..
· Java 개념
Stream API? 자바 8부터 Stream API가 제공되어 함수형으로 프로그래밍이 가능해졌음 String[] arrayOfStrings = {"A", "B", "C"}; // for each for (String name : arrayOfStrings) { System.out.println(name); } // stream Arrays.stream(arrayOfStrings).forEach(System.out::println); 특징 1. 원본 데이터는 변경되지 않는다 원본 데이터로부터 읽기만 수행 arrayOfStrings 에서 newList를 만들기 위해 별도의 Stream을 생성 2. 일회용 한번 사용된 steam은 재 사용할 수 없음 다시 사용하고자 한다면 IllegalStateExcepti..
· Java 개념
자바 둘러보기 자바의 역사 제임스 고슬링을 필두로 1995년에 개발되었다. 처음에는 가전 제품 내 탑재하는 프로그램을 마들기 위해 자바가 개발되었다. 현재는 Java 17버전이 가장 최근 버전이다(2021 릴리즈) 한국에서의 자바 한국은 자바 공화국이라고 불릴정도로 자바를 많이 사용한다 전자 정부 표준 프레임 워크 한국정보화진흥원에서 만든 웹 기반 어플리케이션 프레임 워크 자바, 스프링 및 자바의 유명 라이브러리(Jackson, Apache Commons 등)을 기반으로 구성됨 자바 활용 사례 웹 프로그래밍 안드로이드 어플리케이션 데이터베이스 처리 빅데이터 분산 및 처리(스파크) 자바 파일과 컴파일 소스코드 작성(test.java) 컴파일러가 test.java를 test.class로 변환(JVM이 인식할..
· Java 개념
1. JSP 번외) jsp 액션은 왜 존재할까? 스크립트릿()를 쓰면 되는데 왜 굳이 jsp 액션과 자바빈을 사용할까. 바로 JSP Action 태그를 사용할 줄 안다면 자바 코드를 사용하지 않아도 JSP로 웹 페이지를 개발할 수 있기 때문입니다. 또한 로직을 처리하는 부분과 화면을 처리하는 부분을 따로 나눠서 개발할 수 있습니다 1-1. jsp의 기능 jsp의 주요 기능 중 하나는 데이터를 보여주는 기능입니다. 예시를 하나 들자면 게시판이 있다 이런 기능을 가지고 있는 jsp가 화면 출력부랑 같이 붙어있으면 후에 유지보수, 더 나아가 코드를 재사용하기가 상당히 어려워집니다. 그렇기에 jsp에서는 데이터를 javabean이라는 클래스에 담아서 보여줍니다. 2. JavaBean 2-1. 자바빈 작성 방법 ..
· Java 개념
1. 기본개념 1-1. db 동작 원리 오라클이 설치 됐을 때 우리 pc에 리스너라는 것이 작동하는데 이때 포트가 하나 열린다 그 포트가 1521번 포트이다 이때 어디에 접속할건가 (localhost) 포트번호가 몇번인가(1521) sid는 무엇인가(xe)라는 것을 볼 수 있다. 이걸 통해서 결과를 보내고 얻어오고 할 수 있는 tool이 sql 디벨로퍼이다 이 개념 그대로 자바에 통신을 할 수있다. 하지만 두개는 다른 프로그램이기 때문에 오라클에서 제공하고 있는 드라이버가 필요하다 1-1-1. dirver?? 오라클에서는 자신의 데이터베이스 시스템을 사용할 수 있도록 자바 코드로 미리 오라클을 사용할 수 있는 시스템을 만들어놨다 즉 드라이버의 역할은 서로 다른 시스템간의 인터페이스 역할이라고 볼 수 있다..
· Java 개념
1. Stack Stack 클래스는 LIFO 자료구조를 구현한 클래스이다 1-1. 생성 Stack stack = new Stack(); Stack stack = new Stack(); 1-2. 활용 package trainingStackQueue.stackCoin; import java.util.Stack; public class StackExample { public static void main(String[] args) { // Stack 컬렉션 생성 Stack coinBox = new Stack(); // 동전 넣기 coinBox.push(new Coin(100)); coinBox.push(new Coin(50)); coinBox.push(new Coin(500)); coinBox.push(new..
· Java 개념
List 컬렉션은 순서를 유지하지만 Set컬렉션은 저장순서 유지가 되지 않는다 또한 객체 중복 저장이 불가하고 하나의 null 만 저장 가능하다 1. HashSet 가장 많이 사용된다 1-1. 컬렉션 생성 방법 Set set = new HashSet(); // E에 지정된 타입의 객체만 저장 Set set = new HashSet(); // E에 지정된 타입의 객체만 저장 Set set = new HashSet(); // 모든 타입의 객체 저장 1-2. 동일한 객체를 저장하지 않는다 package ch15.sec03.exam1; import java.util.HashSet; import java.util.Set; public class HashSetExample { public static void ma..
· Java 개념
같은 컬렉션이라서 사용방법은 동일하지만 내부 구조는 완전히 다름. ArrayList는 내부 배열에 객체를 저장하지만 LinkedList는 인접 객체를 체인처럼 연결함 LinkedList에서는 삽입이나 삭제를 하면 바로 앞뒤 링크만 변경하면 되므로 빈번한 객체 삭제와 삽입이 일어나는 곳에서는 ArrayList보다 좋은 성능을 보여준다 1. 생성 List list = new LinkedList();// E에 지정된 타입의 객체들만 저장 List list = new LinkedList(); // E에 지정된 타입의 객체들만 저장 List list = new LinkedList(); // 모든 타입의 객체를 저장 2. 속도 비교 package ch15.sec02.exam03; import java.util.Ar..
ron_nie
'Java 개념' 카테고리의 글 목록