[강의1]
- 라이브러리 : 자바가 기본적으로 내장하고 있는 기능들 (예: sysout, Date, Math, ..등)
- API (Application Programming Interface) : 자바가 제공하는 부품(라이브러리)등의 코드를 응용하여 프로그램적으로 실행되도록 하여 프로그램을 만드는 것
- UI(User Interface) : 만들어진 프로그램을 사람이 사용하기 위하여 프로그램 내에 사용되는 조작기들
[강의2] JAVA공식사용 설명서를 보는 방법 => API documentation JAVA 검색 또는 뒤에 버전 붙여서 검색 가능
(https://docs.oracle.com/javase/7/docs/api/)
- 클래스 : 하나의 프로그램 개념(예 : Math, String.. ), 서로 연관된 변수와 메소드들을 모아서 그룹화하여 이름을 붙인 것
- 패키지 : Math가 속한 패키지는 Java.lang, 클래스들을 정리 정돈함(비슷한 성격의 이름들을 모아서 정리한 것)
[강의3] - 실습
1. Math클래스를 이용하여 PI의 값을 출력시켜보기
2. 1.6을 Math클래스의 floor()메소드를 이용하여 소수점버림을 하기
3. 1.6을 ceil()을 이용하여 올림하기
public class test {
public static void main(String[] args) {
System.out.println(Math.PI); //3.141592653589793
System.out.println(Math.floor(1.6)); //1.0
System.out.println(Math.ceil(1.6)); //2.0
}
}
[강의4]
- 인스턴스 : 객체
- PrintWriter 클래스 : Math와 사용법이 다름
- 인스턴스(객체)를 이용하여 PrintWriter의 클래스를 복제하여 인스턴스이름(객체)에 저장해주기
- 사용법) PrintWriter (인스턴스의 이름) = new PrintWriter("파일이름");
- import를 이용하여 java.io.PrintWriter를 해주면 빨간 밑줄이 하나 없어짐
- 예외상황 (예를들어 파일이름으로 된 파일이 없을때 어떻게 처리할 것인가) => +add
(인스턴스이름).write("파일에 입력할 내용");
(인스턴스이름).close();
** 인스턴스를 이용하지 않을 경우
(인스턴스이름).write("파일에 입력할 내용"); = PrintWriter.write("파일이름","입력할내용");
- 인스턴스를 이용하지 않을 경우, 파일이름을 계속 입력하는 번거로움이 있고 작업량이 크거나 동시에 여러파일을 다뤄야할 경우, 굉장히 일을 처리하기에 비효율적여질 수 있음.
**Math클래스와 PrintWriter클래스
- 차이점 : Math는 생성자(Constructor)가 없고, PrintWriter는 있음. 생성자가 없으면 일회용
- 생성자가 있으면, 객체를 만드는 것이 허용된다
//패키지 이름 자른상태
import java.io.IOException;
import java.io.PrintWriter;
public class InstanceApp {
public static void main(String[] args) throws IOException {
PrintWriter p1 = new PrintWriter("result1.txt"); //새로고침하면 파일생겨있음
p1.write("Hello world!")
p1.close();
PrintWriter p2 = new PrintWriter("result2.txt"); //새로고침하면 파일생겨있음
p2.write("Hello 2");
p2.close();
// PrintWriter.write("result1.txt","Second"); //나이건안되던데?
// PrintWriter.write("result2.txt", "Third"); //
}
}
[강의5] 상속
- 상속을 받으면 부모클래스의 능력들을 모두 자식클래스가 사용할 수 있음
- class Writer가 class Object를 상속받기를 원할 때, Writer extends Object 라고 extends를 이용하여 상속을 받을 수 있음
- 상속을 받는다면 메소드 또한 쓸 수 있음.
- 1,2,3클래스가 있고, 2가 1클래스 상속받고, 3클래스가 2클래스를 상속받는다면, 3은 1클래스또한 포함하고있는 것
- Object클래스의 메소드들은 모든 클래스가 공통적으로 사용할 수 있는 메소드임. Object(모두의 조상)
=> 3클래스에서 1클래스의 메소드를 썼을때, 자바는 3,2,1순으로 거슬러올라가서 핻ㅇ 메소드를 찾아서 3에서 기능을 사용할 수 있도록 해줌
- 상속받은 메소드가 마음에 들지 않는다면 재정의할 수 있음 override
=>3클래스에 write라는 메소드가있고 상속을 받은 2클래스에도 write라는 메소드가 있을경우, 3에서 상속받았던 2클래스의 메소드를 재정의(덮어쓰기)가능함
'괴발개발 > Java' 카테고리의 다른 글
Notion_노션 자바 수업 복습 (0) | 2021.10.02 |
---|---|
Java생활코딩_직접컴파일하기 (0) | 2021.06.09 |
Java생활코딩_입력과 출력 (0) | 2021.06.07 |
Java생활코딩_디버거 (0) | 2021.06.05 |
Java생활코딩_객체선언, 메소드호출 (0) | 2021.06.03 |