JAVA/JAVA수업 19

#15. Set

15-1. Set HashSet. Value값만 저장하고 , index개념이 없다. 순서가 없고 중복이 없다!! 문자열만 담을 수 있는 HashSet을 만들어서 조작해보자. HashSet set = new HashSet(); set.add("순서가 정해져 있지 않다."); set.add("이 스트링과"); set.add(new String("이 스트링과")); set.add("는 같다."); set.size(); set.remove("순서가 정해져 있지 않다."); set.clear(); HashSet 메소드 add() : 요소 추가 size() : 요소 개수 (크기) remove() : 요소 삭제 clear() : 모든 요소 삭제 HashSet의 특징 : 값이 추가가 될 때마다 equals()와 Has..

JAVA/JAVA수업 2023.07.21

#14. I.O(Writer/Reader), buffer, Collection, List

14-1. I.O(Writer/Reader) # 문자스트림 (2Byte) 1. 출력(writer) public void fileSave() { FileWriter fw = null; try { fw = new FileWriter("b_char.txt"); fw.write("룰루랄라"); char[] arr = {'a', 'b', 'c', 'd'}; fw.write(arr); } catch(IOException e) { e.printStackTrace(); } finally { fry { if(fw != null) fw.close(); } catch(IOException e) { e.printStackTrace(); } } } FileWriter() : 파일과 연결된 통로를 만든다. write() 를 이용..

JAVA/JAVA수업 2023.07.20

#13. API, I.O(Input/Output)

13-1. API Application Programming Interface import java.lang.*; (생략) 자바를 사용하면서 필수적인 클래스들을 모아놓은 패키지 1. Math 클래스(수학과 관련) 메소드명(매개변수타입) : 반환형 1. 올림 => Math.ceil(double) : double 2. 반올림 => Math.round(double) : long 3. 버림 => Math.floor(double) : double 4. 절대값 => Math.abs(int/double/long/float) : int/double/long/float) 5. 최소값 => Math.min(int, int) : int 6. 최대값 => Math.max(int, int) : int 7. 제곱근(루트) => ..

JAVA/JAVA수업 2023.07.19

#12. 추상클래스, 인터페이스, 예외처리

12-1. 추상클래스 추상메소드를 선언하는 순간 추상클래스로 정의해야한다. 객체 생성이 불가능하다. 부모클래스의 역할은 가능(다형성 적용 가능)하다. => 기술적으로 개발자가 판단했을 때 이 클래스로는 객체 생성이 불가능해야한다 라고 생각이 들면 추상클래스로 선언 가능 => 개녕적으로 개발자가 판단했을 때 해당 클래스가 아직 구체적으로 완벽하게 구현되지 않은 상태인 것 같다 라는 생각이 들면 추상클래스로 선언 가능 식별자앞에 abstract를 붙인다. public abstract class Sports { 추상메소드는 Override하여 사용할 수 있다. 추상클래스는 부모클래스로 자식클래스 객체를 생성할 수 있다. 12-2. 인터페이스 인터페이스는 interface를 생성시에 만들 수 있다. 인터페이스를..

JAVA/JAVA수업 2023.07.18

#11. 상속, 다형성

11-1. 상속 필드나 메소드를 중복하여 클래스를 생성하게 될 때 매번 클래스에 입력해주는 것보다는 상속을 이용하여 작업한다. 부모클래스(조상클래스, 슈퍼클래스, 상위클래스, 확장클래스) : Product자식클래스(후손클래스, 서브클래스, 하위클래스, 파생클래스) : SmartPhone, Tv, Desktop public class SmartPhone extends Product{ private String mobileAgency; public SmartPhone() { super(); System.out.println("안녕 나는 자식 클래스 스마트폰이야!"); } public SmartPhone(String brand, String pCode, String pName, int price, String..

JAVA/JAVA수업 2023.07.17

#10. 오버로딩, static, 객체배열, list

10-1. 오버로딩x 10-2. static 객체를 생성하지 않아도 사용가능하다. (new를 안해줘도 객체를 사용할 수 있다는 것이다.) public class MethodController2 { // static 메소드 // 1. public static void method1() { System.out.println("매개변수와 반환값이 둘 다 없는 메소드입니다."); } // 2. public static String method2() { return "매개변수는 없지만 반환값은 있는 메소드입니다."; } // 3. public static void method3(String name) { System.out.println("매개변수는 있고 반환값은 없는 메소드입니다."); System.out.pr..

JAVA/JAVA수업 2023.07.14

#9. 객체지향, 클래스, 접근제한자, 생성자, 메소드, 오버로딩

chap02 ~ chap05 9-4. 생성자 9-5. 메소드 메소드(Method) == 멤버 함수 : 입력을 가지고 어떤 일을 수행한 다음에 결과물을 내놓는다!!! 특정 자료형에서만 사용이 가능한 함수이다!!!!!!!!!!!!!!!!!!!!! 한 번 정의해두고 필요할때마다 언제든 호출할 수 있지만, 호출할 때 인자값은 매개변수의 자료형과 개수가 일치해야한다. 1. 매개변수가 없고 반환값도 없는 메소드 public void method1() { System.out.println("매개변수와 반환값이 둘 다 없는 메소드입니다."); int sum = 0; for(int i = 0; i

JAVA/JAVA수업 2023.07.13

#8. 테스트 첫번째날/ 과제

정렬 코드 수정 과제 中 실습. 다음과 같은 재미있는 삼칙 연산 게임을 구현하시오! 1. 게임 실행시 난이도를 선택할 수 있음(상 / 중 / 하) 2. 난이도 선택 시 각 난이도에 맞는 범위의 정수를 가지고 삼칙연산문제( +, -, X)가 랜덤으로 출제됨 하)난이도 = 1 ~ 20 / 중)난이도 = 1 ~ 100 / 상)난이도 = 1 ~ 1000 만약 하/중/상이 아닌 난이도를 입력 받았다면 난이도를 다시 입력받을 수 있도록 구현 3. 문제는 임의의 정수를 가지고 임의의 연산을 하도록 구현 정답일 경우 #정답입니다! 오답일 경우 #틀렸습니다! 라고 출력되도록 구현 4. 0번을 입력하기 전까지 문제가 반복되며 0번을 입력했을 경우 결과를 출력 결과는 정답 횟수와 오답 횟수를 출력 한 뒤 프로그램 종료!

JAVA/JAVA수업 2023.07.12