JAVA 46

[ Java ] -JSP 활용 기본

JSP ( Java Server Page ) html에서 java를 사용하여 동적인 웹페이지를 만들 수 있게 해주는 도구이다. html페이지 내의 자바 코드는 자바 서블릿으로 변환되고, 실제 화면에 구현된 페이지의 소스코드를 확인해보면 자바코드는 제거되어 보여진다. * 자바 서블릿 : 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 의미한다. JSP는 html 내부에 자바 코드를 포함한 것이고, 반면에 서블릿은 자바 코드 안에 html 코드를 포함하고 있는 것이다. * Dynamic web Project 생성하는 법 좌측 상단의 file.- other - dynamic 검색 - dynamic web project 선택 후 next - target runtime 선택 해줌 (n..

JAVA 2022.09.14

[ Java ] - 인터페이스

인터페이스 (interface) 구현 코드가 없는 메서드 즉 추상메서드들로만 이루어진 클래스를 의미하며, interface 키워드를 사용하여 구현한다. 인터페이스는 일종의 설계도 역할을 한다고 볼 수 있다. public interface [인터페이스명] { } ・ 인터페이스에 선언된 모든 메서드는 기본값이 public abstract로 된 추상 메서드이다. ・ 인터페이스에 선언된 모든 변수는 기본값이 public static final 로 선언된 상수이다. 즉 인터페이스에 선언된 모든 변수는 상수로 변환된다. ・ 인터페이스에 선언된 변수와 메서드는 컴파일시에 각각 사용자 정의 상수와 추상메서드로 변환된다. ・ 인터페이스의 경우 추상클래스와 마찬가지로 자기자신은 인스턴스로 생성될 수 없다. ・ 인터페이스..

JAVA 2022.09.06

[ Java ] - 추상클래스 / 템플릿 메서드

추상클래스 (abstract class) 추상클래스는 상위클래스에서 하위클래스에 구현되어야할 메서드들을 생성하여 주고, 그 구체적인 내용은 하위클래스에서 정의되도록 하는 것이다. 추상클래스를 상속받은 클래스는 상위클래스에서 abstract로 지정된 메서드들을 재정의해주거나, 또는 하위클래스 자신도 abstract로 선언해주어야 한다. * 추상클래스는 new 키원드를 사용하여 인스턴스를 객체를 생성할 수 없다. * 추상클래스는 하나 이상의 추상 메서드를 갖는다. * 추상클래스는 class 앞에 abstract라고 선언하여 준다. public abstract class Shape { private String type; public Shape(String type) { this.type = type; } /..

JAVA 2022.09.05

[ Java ] - Static과 final 키워드

Static 프로그램이 메모리에 적재될 때 데이터 영역의 메모리에 생성된다. 여러 인스턴스가 공유하는 값을 선언할 때는 static을 사용한다. static 키원드를 통해 생성된 변수 등은 static 영역에 할당된다. static으로 선언된 것을 클래스 변수 또는 정적필드라 한다. 정적필드는 해당 클래스명을 통해 접근할 수 있다. ** static으로 선언된 변수는 전역데이터로 클래스로드시 공간을 할당한다. ** static으로 선언된 메서드는 클래스 로딩시 공간을 할당하며, 인스턴스의 생성이 불가하다. Student 클래스 package staticEx; public class Student { private static int serialNum = 10000; int studentID; String..

JAVA 2022.09.05

[ Java ] - 상속과 다형성

상속과 다형성 상속 class B extends A {} 상위 클래스의 속성이나 기능을 하위클래스가 상속받아 속성이나 기능이 확장된 클래스를 구현하는 것을 의미한다. class B extends A {}는 하위클래스 B가 상위클래스 A를 상속받은 것이다. ** 일반적으로 상위클래스가 하위클래스보다 일반적으로 구현되며, 하위클래스에서 더욱 구체화되는 특성을 가진다. ** 자식클래스는 부모클래스의 메서드를 재정의할 수도, 그 기능을 확장할 수도 있다. ** extends 뒤에는 하나의 클래스가 올 수 있다. ** 자바에서는 기본적으로 자식클래스의 객체가 인스턴스화 될 때 부모클래스의 디폴트 생성자를 호출한다. super 생성자는 자식클래스에서 부모 클래스의 생성자를 호출하는 방법이다. 또한 자식클래스가 부모..

JAVA 2022.09.04

[ Java ] - 이클립스에서 디버깅 하는 법

디버깅이란? 디버깅이란 컴퓨터 프로그램 개발 단계 중에 발생하는 시스템의 논리적인 오류나 비정상적 연산(버그)을 찾아내고 그 원인을 밝히고 수정하는 작업 과정을 의미한다. 1. breakpoint 잡기 ** breakpoint : 디버깅을 하기위해 프로세를 멈추는 지점을 의미한다. 앞쪽에 노란색으로 표시된 부분에서 디버깅 하려는 지점을 더블클릭한다. 더블클릭시 아래와 같이 파란점이 만들어진다. 2. 초록색 벌레모양 버튼을 누르거나, 마우스 오른쪽 클릭시 Debug As를 클릭한다 3. 디버그 창으로 전환할 것인지 묻는 박스가 나오면 switch를 클릭하면 된다. 맥 기준 fn + f5 : step into로 해당 메서드를 파고파고 들어가게 된다. fn + f6 : step into 하려는 지점을 한 칸 ..

JAVA 2022.09.04

[ Java ] - 배열과 ArrayList

배열 동일한 자료형이 순차적으로 존재할 때 관리하기에 용이하다. 배열은 연속된 자료구조이다. 중간의 값을 지우게 되면, 뒤의 값들이 앞으로 땡겨오게 된다. ** 배열은 인덱스(순서)는 0부터 시작한다. 배열 선언 방법 자료형[] 배열이름 = new 자료형[갯수]; ex) int[] intArr = new int[10]; 자료형 배열이름[] = new 자료형[갯수]; ex) int intArr[] = new int[10]; public class ArrayMain { public static void main(String[] args) { int as[]; int[] b; as = new int[3]; as[0] = 1; as[1] = 2; as[2] = 3; for (int a : as) { System..

JAVA 2022.09.04

[ Java ] - 싱글턴(singleton) 패턴

싱글턴 (Singleton )패턴 디자인 패턴의 일종으로 static을 응용한 패턴이다. 일반적으로 하나의 클래스에서 여러 개의 인스턴스를 생성가능한 것과 다르게, 싱글턴 패턴에서 클래스를 통해 생성될 수 있는 인스턴스는 오직 하나이다. 싱글턴 패턴의 클래스를 통해 한 번 인스턴스가 생성된 이후에 호출되는 생성자는 최초에 생성된 인스턴스를 가리키게 된다. 인스턴스를 생성하기 위해서는 new를 사용하여 생성자를 호출하는 것인데, 생성자에 private을 사용함으로써, 외부에서 생성자 호출을 통해 인스턴스를 생성하지 못하도록 한다. 대신에 getInstance()메서드를 통해 하나의 인스턴스를 반환하여 주는 것이다. private 생성자 public class Singleton { priate static ..

JAVA 2022.09.03

[ JAVA ] - 프로젝트 생성 후 hello world 찍기

자바와 이클립스 설치까지 완료된 것을 가정한다. 2022.07.24 - [JAVA] - [ JAVA ] - 자바 개발환경 구축 (feat mac) - 01 2022.07.24 - [JAVA] - [ JAVA ] - 자바 개발환경 구축 (feat mac) - 02 1. 이클립스를 킨 후 맨 위에 마우스 커서를 두면 아래와 같이 까만 메뉴창이 나온다. 여기서 File - New - Java Project를 클릭한다. 2. Project name에 본인이 원하는 프로젝트 명을 입력 후 Finish를 클릭한다. 보통 프로젝트 명의 첫글자는 대문자로 하는 것이 정석이다. 3. class를 생성한다. 클래스는 실질적으로 코드를 작성하는 부분이다. File - New - Class를 클릭한다. 4. 아래의 창이 나오..

JAVA 2022.08.19