본문 바로가기

java,jsp,spring/java

(20)
java 상속 상속 객체 지향의 상속 서브(자식)클래스의 간결화 클래스 관리 용이 생산성 향상 상속 선언 특징 다중 상속 안됨 > 자식 클래스 한개가 여러 부모 클래스에게서 상속을 못받음 상속 횟수는 제한 없음 최상위 조상 클래스는 java.lang.Object >> 자동 상속 ex 예제 class Point{ private int x,y; // 외부에서 직접 속성 수정 못하게 하기 위해 private 사용 > 메소드로 수정 public void set(int x, int y) { this.x = x; this.y = y; } public void showPoint() { System.out.println("("+x+","+y+")"); } } class ColorPoint extends Point { private ..
java 접근 지정자, static 접근 지정자 클래스나 멤버(멤버 변수(필드, 속성), 멤버 함수(메소드))에 사용됨 멤버에 접근하는 클래스 접근 지정자 private default protected public 같은 패키지의 클래스 x o o o 다른 패키지의 클래스 x x x x 접근 가능 영역 동일 클래스 내 동일 패키지 내 동일 패키지 내 + 자식 클래스 모든 클래스 클래스 멤버 static 멤버 non-static 멤버 static 멤버 선언 class Sample { int n; void g() {…} } class Sample { static int n; static void g() {…} } 공간적 특성 멤버는 객체마다 별도 존재 - 인스턴스 멤버 멤버는 클래스당 하나 생성 - 객체 내부가 아닌 별도의 공간에 생성 시간적 ..
java 객체 배열 등 class Circle { // 접근 지정자가 없는 클래스 > default 클래스 int radius; public Circle(int radius) { this.radius = radius; } public double getArea() { return 3.14*radius*radius; //return Math.PI*radius*radius; } //public static void main(String[] args) { //System.out.println("2"); //} public 클래스에 있는 main 메소드만 실행 } public class CircleArray { // 자바 파일 한개에 public은 한개만 가능 public static void main(String[] args) { ..
java 객체 지향 객체 지향 캡슐화 외부에서 객체 접근하는데 있어서 정보를 숨기고 객체의 연산을 통해서만 접근이 가능하게함 상속 extends가 있으면 상속 받은 클래스 (자식) -> 부모의 속성과 메소드를 가져옴 다형성 메소드를 상속받아 각 객체가 출력을 다르게 구현 가능 절차 지향 vs 객체 지향 클래스와 객체 클래스 : 사람 속성 : 이름, 직업, 나이, 성별 … 메소드 : 밥 먹기, 잠자기, 말하기, … 객체 : A > 이름 : A , 직업 : 의사, 나이 : 30, 성별 : 여 / 메소드 객체 : B > 이름 : B , 직업 : 교수, 나이 : 46, 성별 : 남 / 메소드 객체 생성과 접근 public class Circle { int radius; String name; public Circle() {} //..
java 예외 처리 예외(Exception) 처리 0으로 나누는 경우 큰 인덱스 배열 존재하지 않는 파일 정수 입력(데이터 타입이 맞지 않는 경우) 예외 타입(예외 클래스) 의미 예외 타입(예외 클래스) 의미 ArithmeticException 산술 오류 ex) 0으로 값을 나눌 때 IllegalArgumentException 타입 오류 ex) int 타입에 abc 입력 NullPointerException null을 가지고 있는 객체/변수 등을 호출할 경우 IOException 입출력 오류 OutOfMemoryError 메모리 초과 오류 NumberFormatException 숫자 형식 오류 ex) 문자열 > 숫자형 ArrayIndexOutOfBoundsException 배열 오류 ex) int n = new int[4]..
java 열거형 등 열거형 1. 선언 // 1. public enum Type { // 열거형의 이름이 Type WALKING, RUNNING, TRACKING, HIKING } // 2. public class Shoes { public String name; // 속성, 필드 public int size; public enum Type { WALKING, RUNNING, TRACKING, HIKING } } // 3. enum Type { WALKING, RUNNING, TRACKING, HIKING } public class Shoes { public String name; public int size; public Type type; } 2. 사용 enum Type { WALKING, RUNNING, TRACKING..
java 배열 배열 - 여러 데이터를 하나로 묶은 것(일련의 공간을 여러 칸으로 나눈 것) 수많은 데이터를 단 하나의 변수로 관리할 수 있고, 코드 효율을 높일 수 있음 배열의 값은 모두 같은 타입이어야 함 배열의 길이는 변하지 않음, 배열의 길이는 length 키워드를 통해 가져올 수 있음 배열 만들기 초기화를 통한 생성 : 중괄호 안에 초깃값 명시 길이 지정을 통한 생성 배열 타입에 따라 초깃값 결정 : 정수(0), 실수(0.0), 논리형(false), 문자열(null) 일차원 배열 생성 잘못된 예시 int intArray[10]; // 인덱스 값을 넣으려면 배열을 생성 해야함 배열을 초기화 하면서 생성 배열 인덱스와 원소 접근 n = intArray[-2]; // 인덱스는 0부터 시작이므로 오류 n = intAr..
java 기초 (5) for 문 반복 횟수가 명확할 때 사용하기 편리한 반복문 특이한 형태 1. for(초기작업; true; 반복후작업) { } // 무한반복 2. for(초기작업; ; 반복후작업) { } // 무한반복 3. for(i=0;i=2200) { System.out.println("상승장"); } else if (kospi >=2000) { System.out.println("횡보장"); } else { System.out.println("하락장"); } } else { if (kospi >=2300) { System.out.println("상승장"); } else if (kospi >=2000) { System.out.println("횡보장"); } else { System.out.println("하락장"); }..