1. 객체지향의 프로그래밍의 탄생 배경 하드웨어는 무어의 법칙으로 2배씩 빨라지고 성장하고 있는 반면 소프트웨어는 발전이 더디고 소프트웨어가 하드웨어의 발전을 따라가지 못하는 현상이 발생하여 소프트웨어 위기(Software Crisis)라는 문제점이 발생함. 소프트웨어의 위기의 주요 원인 중 하나는 기존 절차식 프로그래밍 방법의 낮은 생산성이다. 절차식 프로그래밍은 간결하고 빠른 실행 파일을 만들기는 하지만 규모가 커지면 개발뿐만 아니라 유지보수에 한계를 드러냈다. 또한 코드의 일반성이 없으므로 한 번 만든 코드는 수정없이 재사용되는 경우가 드물고 매번 현실의 문제에 맞게 처음부터 다시 개발해야한다.설사 재사용 하더라도 기존코드를 그대로 쓰기 보다는 필요에 따라 조금씩 수정해야만 했다. 그러다보니 대규모..
분류 전체보기
1. SocketAddress SocketAddress클래스는 소캣생성하는 클래스Socket클래스는 추상클래스이므로 직접 객체를 생성하지 않고하위 InetSocketAddress클래스를 사용하여 인스턴스를 생성 SocketAddress sockadr = new InetSocketAddress(host,port); 특징 - SocketAddress 클래스의 인스턴스는 한번 생성하면 변경이 불가능- InetSocketAddress(int port)와 같이 포트번호만 주면 호스트 IP 주소는 임의로 잡힘(패킷이 전송할 때 커널에서 알아서 디폴트 아이피주소 를 부여)- 생성한 SocketAddress 객체를 사용하여 외부 호스트와 연결을 시도할 때 예외가 발생하면 'unresolved'를 표기하고 재사용할 수 ..
InetAddress 클래스는 인터넷 도메인이나 호스트를 IP 주소로 전환하는 기능을 함. InetAddress 클래스의 특징- 클래스는 별도의 생성자를 제공하지 않으며, 객체를 생성하기 위해 getByName()메소드와 같이 정적 객체 생성 메소드를 사용- InetAddress 객체를 생성하면 수정할 수 없다- InetAddress 는 일반적으로 IPv4 주소를 사용 (IPv6는 Inet6Address) import java.net.InetAddress; public class InetadrEx {public static void main(String[] args) {InetAddress address[] = null;try {address = InetAddress.getAllByName(args[0]..
# 사전작업 eclipse에서 Spring Project-> Spring MVC Project 로 프로젝트 생성 1. 프로젝트 우클릭 -> Properties ->JavaCompiler (1) JDK Compliance에서 Use compliance from execution environment .... 체크 해제 후 (2) compiler compliance leve을 1.8로 변경. 왜냐하면 난 JDK 1.8을 사용하고있으니.. 2. 프로젝트 우클릭 -> Properties -> Project Facets Java 버전을 1.8로 변경 3. pom.xml 에서 java버전을 바꿔줌이왕이면 스프링 프레임워크 버전도 맞게 변경. 난 4.2.2를 사용하니.1.84.2.2.RELEASE1.6.101.6.6..
List.java123456789101112131415161718192021222324252627282930313233 //List 인터페이스,는 타입public interface List { //임의의 위치에 데이터 삽입 public boolean add(T data, int index); //맨 첫번째에 데이터 삽입 public boolean addFirst(T data); //맨 마지막에 데이터 삽입 public boolean addLast(T data); //맨 끝에 데이터 삽입 public boolean add(T data); //인덱스 값을 통해 임의 위치 값 줄력 public T get(int index); //리스트의 크기 값 public int size(); //마지막 리스트 의 값 출력..