Programming/Java

Programming/Java

클래스 생성과 main 메소드 그리고 HelloWorld 출력

질문을 댓글에 남겨주시면 답변해드리겠습니다.!

Programming/Java

[Effective-Java] Rule-02. 생성자 인자가 많을땐 Builder 패턴을 고려하라

규칙 1.생성자 인자가 많을 때는 Builder 패턴 적용을 고려하라 장점 1. 점층적 생성자 패턴에 비해 의미를 이해 하기 쉽다.점층적 생성자 패턴의 경우 설정할 필요가 없는 인자를 전달해야하는 경우가 발생한다. 빌더 패턴의 경우 메소드를 통해 인자를 전달하기 때문에 메소드의 이름으로 의미를 파악하기 쉽다. 장점 2. 객체 일관성이 깨지지 않는다.자바 빈 패턴의 경우 1회 함수 호출로 객체의 생성을 끝낼 수 없어 일시적으로 객체 일관성이 꺠질수 있다(생성자의 인자가 유효한지 검사를 하는 방법을 사용할 수 없다).빌더 패턴의 경우 필수적 인자를 생성자에 전달하여 빌더 객체를 만들며(객체일관성 유지), 빌더 객체에 정의된 설정 메소드를 호출하여 선택적 인자를 전달받고 아무런 인자를 받지 않는 build 메..

Programming/Java

[Effective-Java] Rule-01. 생성자 대신 정적 팩토리 메소드를 사용할 수 없는지 생각해 보자

규칙 1.생성자 대신 정적 팩토리 메소드를 사용할 수 없는지 생각해 보자 장점 1. 일반 생성자와 달리 정적 팩토리 메소드에는 이름이 있다.생성자에 전달되는 인자는 어떤 객체가 생성되는지 설명하지 못하지만, 정적 팩토리 메소드의 이름을 잘 짓는다면 생성되는 객체가 어떤 객체인지 유추가 가능하다. 장점 2. 생성자와 달리 호출할때 마다 새로운 객체를 생성할 필요는 없다.변경 불가능 클래스라면 , 미리 만들어둔 객체를 활용하거나 만든 객체를 캐시해 놓고재사용하여 같은 객체가 불필요하게 반복 생성되는 일을 피할 수 있다.어떤 시점에 어떤 객체가 얼마나 존재할지를 정밀하게 제어할 수 있다(Instance-controlled class).싱글톤 패턴을 따르도록 할 수 있고 객체 생성 불가능한 클래스를 만들 수도 ..

Programming/Java

자바란 무엇인가?

Java의 시작 GE가 1991년에 Sun Micro Systems에 대화식 TV에 탑재될 소프트웨어 개발을 요청하였다. 제임스 고슬링, 마이크 쉐리단, 패트릭 노턴이 해당 개발을 맡게 되었고, 초기 C++를 확장 하여 사용하려 했으나, 개발 목적에 부족하다고 생각하여 새로운 언어를 개발하게 되었다. C/C++에 기반을 둔 가상 머신의 구현에 초점을 맞추었고, 인터넷이 등장하자 운영체제에 독립적인 Oak가 그에 가장 적합하다고 판단하여 개발방향을 변경, 자바 커피 이름을 딴 'Java'로 이름을 변경하였다. Java 무엇이 좋은가?● JVM(Java Virtual Machine)개발을 통해 운영체제와 상관없이 자바 프로그램을 실행 가능하게 되었다.● 객체지향 언어로써 신뢰성 있는 소프트웨어를 쉽게 작성가..

Programming/Java

01. Strategy Pattern

Strategy Pattern 1. Definition - 알고리즘군을 정의하고 각각을 캡슐화하여 교환하여 사용할 수 있도록 만든다. 스트래티지를 활용하면 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있다. - Define a family of algorithms, encapsulate each one, and make them interchangeable. strategy lets the algorithm vary independently from client from clients that use it. 2. UML Diagram Context: interface인 Strategy를 인스턴스의 구현 객체를 가지고 있으면서, 해당 객체의 메소드를 실행하는 메소드를 가지고 있다.St..

Programming/Java

response 객체

2. response 객체 - 클라이언트에 대한 응답 처리를 하는 객체인 response는 실행 결과를 브라우저로 되돌려 줄 때 사용하는 내장 객체이다. JSP에서는 response 객체의 기능 중 리다이렉트 기능을 많이 사용하는데, 리다이렉트는 response 객체의 sendRedirect() 메소드를 사용하여 웹 서버가 브라우저에게 지정한 페이지로 이동하도록 지시한다. - ex) response.sendRedirect(“https://sammaru.cbnu.ac.kr”); // https://sammaru.cbnu.ac.kr 로 이동한다. 메소드설명getContentType(String)MIME 타입을 지정, 부가적으로 글자의 인코딩을 지정한다.getCharacterEncoding()응답하는 내용의 ..

Programming/Java

request 객체

1. request 객체 - 웹 서비스는 웹 기반으로 클라이언트의 요청을 받아서 어떤 응답을 제공해주는 서비스를 말한다. 이런 웹 서비스를 위한 클라이언트와 서버 사이의 요청과 관련된 정보는 request 객체에 저장되어 관리된다. - request객체를 파악하면 클라이언트에서 서버로 전송되는 데이터를 알 수 있다. 메소드설명getContextPath()JSP 페이지가 속한 웹 애플리케이션의 컨텍스트 패스를 구한다.getMethod()요청방식이 GET방식인지 POST방식인지 알려준다.getRequestURL()요청 URL을 구한다.getRequestURI()요청 URL에서 쿼리 ㅅ트링을 제외한 부분을 구한다.getSession(flag)요청과 관련된 세션 객체를 구한다.getRequestDispatche..

Programming/Java

JSP 내장 객체의 분류

내장 객체 분류내장객체입출력 관련 객체1. request2. response3. out서블릿 관련 객체1. page2. config외부 환경 정보를 제공하는 객체1. session2. application3. pageContext예외 관련 객체exception

JohnMark
'Programming/Java' 카테고리의 글 목록 (3 Page)