목록Back-End/JAVA (31)
NOW OR NEVER
예외 처리 예외: 프로그램 실행 중에 사용자의 부주의 등으로 인하여 예기치 않는 상황이 발생하는 것 예외 처리: 위에서 설명한 예외를 처리하는 것 자바에서는 대부분의 발생할 수 있는 예외에 대하여 이미 클래스로 만들어져 있다. 그 상황이 되면 자동으로 new ArrayIndexOutOfBoundsException()으로 예외객체가 생성된다. 자바에서는 대부분의 예외에 대하여 이미 클래스로 만들어져 있고 그 상황이 되면 자동으로 예외 객체가 생성된다. 예외가 발생할 만한 코드를 그대로 두게 되면 사용자로부터 신뢰를 잃게 된다. 모든 예외 중에 제일 조상은 Exception 이다. ArrayIndexOutOfBoundsException 과 NumberFormatException은 is a 관계 세분화 하지 ..
상속성 추상메소스 추상메소드는 미래에 후손클래스들이 반드시 가져야 할 메소드이지만 부모클래스를 만드는 시점에서 구체화 할 수 없는경우 메소드 몸체를 정의하지 않고 메소드 선언문만 명시한다.이것을 추상메소드라 한다. 메소드이름 왼쪽에 abstract 키워드를 써 준다. 추상클래스 추상메소드를 하나라도 포함하고 있는 클래스를 추상클래스라 하고 클래스 이름 왼쪽에 abstract 키워드를 써 준다. 추상클래스는 추상메소드뿐 아니라 body가 구체화된 메소드를 포함할 수 있다. 또, 추상클래스는 body를 구체화하지 않는 메소드를 포함하고 있기 때문에 추상 클래스의 객체는 생성할 수 없다 반드시 그 추상클래스를 상속받아 추상메소드를 구현한 클래스의 객체를 생성해야 한다.. 익명클래스 이름없는 클래스를 말한다. ..
Keyword final 클래스의 멤버변수 앞 변수이기는 하지만 상수(고정된)처럼 사용하고자 할 때 사용하는 것 특정 값 이외의 다른 값을 사용하면 안될 때 사용 ex) final int b = 10; b라는 변수이기는 하지만 10외에 다른 값을 가지면 오류가 발생하게 만듦 상수는 모두 대문자로 만든다. 그래서 final 붙을 경우 변수가 상수 역할을 하므로 대문자로 만들어 주는 것이 좋다. final은 어차피 못바꾸는 것이라서 객체마다 따로 메모리를 잡을 필요가 없다. 그래서 final 이면 static으로 만들어서 모든 객체가 같이 사용한다. ex) final static String ADDR = "서울시 마포구 서교동"; 클래스의 멤버메소드명 앞 최종 메소드 부모로부터 물려받은 final metho..
메소드 호출방식 값에 의한 호출(Call By Value) 메소드 호출 시에 기본 자료형이 전달되는 것을 말하며 메소드 안에서 전달된 값이 변경되더라도 호출하는 쪽에는 변경된 내용이 적용되지 않는다. 참조에 의한 호출 (Call By Reference) 메소드 호출 시에 참조 자료형(객체, 배열)이 전달되는 것을 말하며, 메소드 안에서 전달된 값이 변경될 때에 호출하는 쪽에서 변경된 내용이 적용된다. 참조변수 : 데이터(값)을 저장한 것이 아닌 그 값을 가리키는(메모리상의 주소 전달) 변수 상속 class b extends a{ } class a가 부모 클래스, class b가 자식 클래스 : b는 a로부터 상속받겠다. 자식은 부모의 모든 속성과 동작을 물려받게 된다. 이미 만들어진 부모 코드를 사용해서..
객체 지향 프로그래밍 Object Oriented Programming(OPP) ex)java, c++ 현실 세계의 모든 것으 객체화 할 수 있다(눈에 보이는 것일 수도 있고 개념적인 것일 수 있다. 객체 : 세상을 구성하고 있는 모든 것을 객체라고 말 할 수 있다. 이 세상에서 유일하고 단 하나 밖에 없는 것이다. 자바로 객체 지향 프로그래밍을 할 때에는 표현해야하는 대상에 대하여 속성과 동작을 분석하여 클래스를 먼저 만들어야 한다. 특징 은닉성(encapsulation) 클래스를 구성하고 있는 속성(data)들을 외부의 다른 클래스로부터 보호하는 것을 말한다. 클래스를 만들 때 setter와 getter, constructor을 일일이 만들기 번거로움을 줄이고 자 이클립스 기능 사용 모든 구성 요소들..
식별자 변수 이름이나 클래스 이름이나 method 이름 등 이름을 정해주는 것을 말한다. 다른 것들과 구별하기 위하여 이름을 정해주는 것 규칙 한글, 영문, 숫자, _,$로 구성될 수 있지만 가능하면 한글을 사용하지 않는 게 좋다. 첫 글자는 영문이나 _로 시작한다. 식별자 첫 글자에는 숫자가 올 수 없다. 클래스 이름의 첫 글자는 영문 중 대문자로 시작한다. 변수명이나 메소드 이름의 첫 글자는 소문자로 시작 식별자를 정할 때는 가능하면 의미있는 이름으로 설정 public, static, void 등과 같이 예약어(자바에서 이미 의미있는 단어로 예약되어 있는 단어)들은 식별자로 사용할 수 없다. 단어와 단어 사이 구분 두 개 단어 이상으로 식별자를 정해 줄 수 있다. 식별자에는 공백을 포함시킬 수 없다...
자바의 자료형 변수를 만들 때 에는그 변수 안에 어떤 성격의 값을 넣을 것인지 정해주어야 한다. 변수 선언시 해당 자료형을 붙여 선언할 수 있다. 자료형이 서로 다른 것 끼리 연산하는 경우 그 결과는 그 중 자료형의 용량이 더 큰 것으로 된다. ex) int( :4byte) + double( :8byte) = double 정수 / 정수의 결과는 정수가 된다. 만약 소수점 이하의 값을 가져야 한다면 둘 중에 하나를 실수로 변환한 후에 연산을 해야한다. 기본 자료형(8가지) boolean 참인지 거짓인지 상태를 위한 자료형 참이면 true, 거짓이면 false 이렇게 두 가지의 값을 저장할 수 있다. 보통 비교연산의 결과를 저장한다 char 하나의 문자를 표현하기 위한 자료형(자바는 문자여과 하나의 문자에 ..
제어문 프로그램 실행 중에 실행할 문장을 제어하기 위한 문장을 말한다. 선택문 상황에 따라 실행시키고자 명령어(들)를 선택 시키고자 할 때 사용 if if(조건식){ 조건식이 참일 대 동작할 명령어(들) }else{ 조건식이 거짓일 때 동작할 명령어(들) } 조건과 상관없이 실행되어야 할 문장들은 if else 밖에서 작성하는 것을 권장한다. if문이 왔다고 해서 반드시 else문이 오지 않아도 된다. if문만 올 수도 있다. : if문을 조건식이 거짓일 때는 아무것도 실행하지 않고 넘어가고 참일 경우에만 실행한다. 실행시켜야 하는 문장이 한 개 이상이라면 중괄호를 꼭 작성해줘야 한다. - 중첩 if 문 - if문 속에 또 다른 if문이 올 수 있다. ```java if(조건식1){ if(조건식2){ }..
연산자 산술 연산자 + - * / % 증감 연산자 증감 연산자는 변수명 앞 뒤 둘 다 사용 가능 증감 연산자가 즉 증감연산자가 단독으로 사용되면 앞에 오거나 뒤에 오거나 동일한 결과가 나온다. 그러나 다른 연산자와 같이 사용되면 의미가 달라진다. 증감연산자는 O = O + 1 이나 O = O-1 이므로 증감연산자와 함께 쓰인 변수가 다른 변수에 저장되더라도 그 변수 또한 값이 증감한다. 증감연산자가 변수 명 뒤에 있을 경우 : 같이 쓰인 다른 연산자 먼저 처리(다른 연산 먼저 실행)하고 증감 연산자 처리(나중에 증감 연산 실행) 증감여난자가 변수 명 앞에 있을 경우 : 증감 연산자 먼저 처리(먼저 증감) 후 같이 쓰인 다른 연산자 처리 ++ : 변수 자신에 +1을 하여 다시 변수에 저장, 1 증가 ex)..
변수와 상수 public class VariableTest03 { public static void main(String[] args) { String korea; korea = "hello"; System.out.println(korea);//변수 System.out.println("korea");//상수 } } 변수 프로그램 실행 중에 발생한 데이터를 컴퓨터 메모리에 저장시켜야 하는 경우가 있다면 그 때 변수를 만든다, 상황에 따라 변수에 담긴 데이터를 바꿀 수 있다 변수는 때에 따라서 그 값이 변할 수 있다. 대입 연산자(=) 왼쪽에는 반드시 변수만이 올 수 있다. 변수 사용 시 반드시 변수를 선언하고 사용해야 한다. 그러지 않을 경우 변수가 없다고 처리되어 오류가 발생한다. 변수를 선언함과 동시에..