안녕하세요.
오늘은 자바 개념에 대해 이야기해보고자 합니다.
자바 개발자라면 자바 공부는 보고 또 보고 무한반복으로 봐야 되는 것 같더라구요…
그래서 저도 익숙해 질때까지 열심히 작성하려 합니다..ㅜㅜ 그럼 작성 시작할게요~
자바빈즈(JavaBeans)
데이터를 관리하는 목적으로 사용한다거나 도구적인 성격을 가지고 있는 것을 말하며,
재사용이 가능한 컴포넌트(독립적인 모듈)입니다.
(모듈 : 독립되어 있는 하나의 소프트웨어 또는 하드웨어 단위를 지칭)
참조변수
객체를 사용하기 위해서는 객체의 주소값을 가지고 있는 참조 변수를 만들어 줘야 합니다.
Ex: Helloworld hello1 = new Helloworld(); hello1이 참조 변수입니다.
생성자
객체를 생성하는 특별한 메소드이며, 생성자를 호출하는 동시에 초기화를 할 수 있습니다.
Ex : Hero h1 = new Hero("하이",100);
리턴타입 명시가 없는 특별한 메소드이며, 클래스 이름과 동일합니다.
디폴트 생성자
텅빈 생성자로서, 클래스 내부에 생성자가 정의되어있지 않은 경우, 자동적으로 기입됩니다.
Ex: Hero(){ }
예외
프로그램을 만든 프로그래머가 상징한 정상적인 처리에서 벗어나는 경우에 이를 처리하기 위한 방법이며,
프로그램을 개발하면서 발생되는 오류를 제어 및 처리하는 것입니다.
실제 코드를 예제로 들어 이야기를 해 보죠
Try : 시도해본다
Catch : 잡아본다.
Exception e : 예외를 (e는 예외에 대한 설명을 뜻합니다.)
getMessage : 에러만 보여준다.
toString : 어떤 형태의 익셉션이 발생했는지
printStackTrace : 어떤 익셉션이 발생했고 원인은 무엇이며, 어떤 로직을 통해서 에러가 발생했는지의 정보를 제공.
위에서와 같이 getMessage, toString, printStackTrace 를 사용할 수 있으며, 대부분의 프로그램에서는 상세한 에러정보를 볼 수 있는 printStackTrace를 사용하는 것이 일반적입니다.
변수
말 그대로 변하는 수입니다.
변수를 선언(초기화) 후 출력하면, 출력 문구가 나옵니다.
(변수를 초기화하지 않으면 사용할 수 없습니다.)
final키를 설정하면 상수 선언(변하지 않는 수로 설정)이 가능하며, 보통은 메인함수 밖에서 선언합니다.
static이란 하나의 클래스에서 공유하는 자원입니다.
오버플로의 뜻은 최고 값에 1를 더하면 최소값으로 변경된다는 뜻입니다.
레퍼런스 변수
객체를 가리키는 변수입니다.
예를 들어, good h1 = new good();이 있으면 h1이 레퍼런스 변수가 됩니다.
크기가 크기 때문에 객체의 주소를 저장하여 특정 객체를 간접적으로 가리키는 변수를 뜻합니다.
Static
‘공유’의 의미를 담는 키워드입니다.
예로, static int count = 0; 이라 하면 이것은 객체 외부의 공유 가능한 변수가 됩니다.
(여러 객체가 공유하는 변수)
인스턴스 변수(ex : String name)는 객체가 가지고 있는 변수로써 객체 내부의 변수라 합니다.
Static메소드는 유틸리티 메소드로써 객체의 생성 없이 사용 가능한 메소드입니다.
(메소드에 static이 붙은 형태로써 Math.random(); 이거나 static void m1(){} 등이 해당됩니다.)
일반 메소드와의 차이점은 일반 메소드는 객체 생성 후 선언하는 형태이지만 객체 생성 없이 사용 가능한 점이 차이점이라 할 수 있습니다.
자료형
나에게 필요한 데이터 타입을 자료형이라하며 원시자료와 비 원시자료로 구분됩니다.
원시자료 – 일반 자료형
비 원시자료 – 다른 자료형을 엮어서 만드는 작업 ( ex: 배열 )
기본 입출력
사용자와의 상호작용을 할 수 있으며, 콘솔창에 값을 입력하여 값을 얻을 수 있습니다.
Scanner class를 사용하며, 입력받은 자료는 내부적으로 어떠한 처리를 한 뒤에, 다시 사용자에게 그 값을 반환할 수 있습니다.
보통은 console.log(""); 나 system.out.println(""); 으로 사용됩니다.
내용이 길어져서 다음글에서 여러 개념들을 다시 소개하도록 하겠습니다.
'JAVA' 카테고리의 다른 글
JSTL 날짜 포맷 변경 방법 (0) | 2020.06.15 |
---|---|
JAVA 개념 정리 2탄 (0) | 2020.06.05 |
[JAVA] 객체지향프로그래밍 OOP (Object Oriented Programming) (0) | 2020.04.05 |
[JAVA] Method (0) | 2020.04.03 |
자바(JAVA) 국비지원 훈련 과정 취업 성공 후기 (3) (0) | 2020.04.02 |
댓글