JAVA 12

[JAVA] 마지막 튜터링 (2021- 08-11 , 2021-08-13)

마지막 튜터링 2일은 온라인 슈퍼마켓을 만들었다. Mysql에 저장되어 있는 슈퍼마켓의 제품 이름, 유통기한, 제품 종류 , 제품 개수 , 할인율의 데이터를 가져와서 손님과 직원의 입장에서 사용할 수 있게끔 구성했다. 그리고 직원이 사용하는 메뉴에 들어가기 위해서는 아이디와 비밀번호가 필요한데 아이디와 비밀번호를 파일에 저장하여 입력한 값과 같으면 사용할 수 있도록 했다. 짧은 시간에 만들기도 했고 거대한(?) 프로젝트는 처음 구현해 봐서 여러 개의 파일로는 나누지 못했다.. 그래서 한 파일에 구현했고 static을 사용해서 한 개의 클래스 내부에서 작성되었다. 프로그램이 종료되는 시점은 고객이 물건 계산을 완료하면 종료되게끔 구현했다. 참고) My sql을 처음 사용해서 데이터를 가져오는 것을 멘토분의..

JAVA 2021.08.19

[JAVA] 튜터링 11일차!(2021-08-09)

튜터링 11일 차에는 파일 입출력에 대해서 공부하게 되었다. 학교에서 배울 때는 거의 뒷부분에 해당하는 부분이라 시험에 급급해 자세하게 알려주지 않았던 부분이고 나중에 많이 쓰일지 모른다는 생각에 평소보다 더 집중해서 공부했었던 것 같다. ▷ 스트림 ▷ 바이트 스트림 ▷ 문자 스트림 ▷ 버퍼 스트림 ▷ File 클래스 ▷ 예제 스트림 컴퓨터와 사용자 사이에서 입출력을 도와주는 부분이다 입력장치 → 입력 스트림 → 프로그램 → 출력 스트림 → 출력 장치 순으로 입출력이 이루어진다 선입선출 구조를 이룬다 바이트 스트림 , 문자 스트림으로 구성되어 있다 바이트 스트림 : 바이트, 파일 입력 시 바이너리 파일을 읽을 수 있다. 문자 스트림 : 문자(자바에서 문자 1개 : 2바이트)만 읽을 수 있다 , 파일 입력..

JAVA 2021.08.11

[JAVA] 튜터링 10일차! (2021-08-04)

튜터링 10일 차에는 제네릭과 컬렉션의 개념 , Iterator , Vector , ArrayList , HashMap , Collections을 배웠다. C++에서 살짝 맛보기(?) 느낌으로 공부를 했었는데 자바에서 다시 보니 반가운 느낌이 들었다. ▷ 제네릭과 컬렉션 ▷ Iterator ▷ Vector ▷ ArrayList ▷ HashMap ▷ Collections 제네릭과 컬렉션 제네릭이란 우리가 무언가를 선언할 때 직접적으로 타입을 선언해 주어야 했지만 제네릭은 타입을 여러 종류를 쓸 수 있다. 즉, 일반화시키는 도구라고 정의하면 된다. 컬렉션은 C++에서 Container과 비슷한 개념이라고 생각하면 된다. 크기 제한이 없는 배열로서 사용할 수 있다는 장점이 있고 단점으로는 데이터의 크기를 예측..

JAVA 2021.08.06

[JAVA] 튜터링 9일차!(2021-08-02)

개강이 한 달도 안 남은 날이 왔다...ㅜㅜ 튜터링 9일 차에는 지난 시간에 내주었던 과제들을 멘토분이 꼼꼼하게 분석하고 질문하는 형식으로 진행되었다. 내가 자주 쓰는 클래스, 메서드 들의 알지 못하는 부분까지 질문을 해서 많이 당황했고 모르는 부분을 알게 되어서 좋은 시간이었다. ▷ 문제 1 ▷ 문제 2 ▷ 문제 3 ▷ 문제 4 문제 1 입력받은 이진법 숫자 2개의 해밍 거리를 구하는 프로그램 입력 4 0 1 000 000 1111111100000000 1111111100000000 101 000 출력 Hamming distance is 1. Hamming distance is 0. Hamming distance is 16. Hamming distance is 2. 제출 import java.util...

JAVA 2021.08.03

[JAVA] 튜터링 8일차!!(2021-07-30)

튜터링 8일 차에는 자바에서의 자주 쓰이는 클래스들을 배웠다 ▷ Object ▷ Wrapper ▷ String ▷ StringBuffer ▷ StringTokenizer ▷ Math ▷ Calendar Object Object 클래스는 모든 클래스들의 부모 클래스이다. Object는 모든 클래스에 강제 상속이 된다. Object 메소드 boolean equals(Object obj) obj가 가리키는 객체와 현재 객체를 비교하여 참, 거짓 반환 Class getClass() 현 객체의 런타임 클래스를 반환 int hashCode() 현 객체의 해시 코드 반환 String toString() 현 객체의 문자열 표현 반환 , 객체+"문자열" → 객체. toString() + 문자열로 자동 변환 void no..

JAVA 2021.08.03

[JAVA] 공부 7일차! (2021-07-28)

튜터링 7일 차! 이번 튜터링에서는 지금까지 배운 내용들을 점검해보는 시간을 갖게 되었다. 멘토분이 5문제를 제시하고 맨 마지막 문제는 과제로 남기고 4문제를 풀게 되었다. ▷ 문제 1 ▷ 문제 2 ▷ 문제 3 ▷ 문제 4 ▷ 과제 문제 1 import java.util.Scanner; public class Grade_Input { public static void main(String[] args) { Scanner sc =new Scanner(System.in); System.out.print("점수(0~100) = "); int Grade = sc.nextInt(); if(Grade>90) System.out.println("학점은 A입니다."); else if(Grade >80) System.o..

JAVA 2021.07.29

[JAVA] 공부 6일차! (2021-07-26)

튜터링 6일 차!! 메서드 오버 라이딩 , 추상 메서드 , 인터페이스 ▷ 메서드 오버 라이딩 ▷ 추상 메서드 ▷ 추상 클래스 ▷ 인터페이스 ▷ 인터페이스 상속 ▷ 인터페이스 와 추상클래스 비교 ▷ 과제 메서드 오버 라이딩 우선 오버 라이딩이란 상속관계에서만!! 나타난다. 자세한 내용은 https://hj39-develop.tistory.com/15?category=909926를 참조하면 된다. 오버 라이딩과 오버 로딩의 차이점이 작성되어있다. 오버 라이딩과 업 캐스팅의 우선순위를 정하자면 (오버 라이딩 > 업 캐스팅)으로 나타난다. 업 캐스팅된 레퍼런스라도 메서드가 오버 라이딩되어있는 경우 오버 라이딩된 결과값이 출력된다. 추상 메서드 선언이 되어있지만 구현이 되어있지 않는 메서드를 말한다. abstra..

JAVA 2021.07.28

[JAVA] 공부 5일차! (2021-07-23)

튜터링 5회 차가 되는 날이다. 상속의 개념 , 상속과 생성자 , 업 캐스팅을 배웠다. ▷ 지난번 과제 보완 ▷ 상속의 개념 ▷ 상속의 장점 ▷ 생성자 ▷ 업 캐스팅 ▷ 다운 캐스팅 ▷ 과제 지난번 과제 보완 package 과제; import java.util.Scanner; class Person{//참여할 사람 이름저장할 클래스 private String name;// 이름 저장할 필드 public Person(String name) {//생성자 this.name = name; } //public void insert_name(String name) {//입력받은 이름을 저장하는 함수 //this.name = name; //} public String Return_Name() {//저장된 이름 반환하..

JAVA 2021.07.24

[JAVA] 공부 4일차! (2021-07-21)

튜터링 4일 차가 되었다 객체의 치환, 객체 배열, 메서드 , 접근 지정자 , static , final을 배웠다. C++과 비슷한 부분이 많이 있지만 완전히 C++개념으로 이해하려다 보니 실수를 해서 오해했던 부분들이 있었다. 그럼에도 C++에서 객체에 대한 내용들을 배우고 자바를 배우니 확실히 이해하는데 많은 도움이 되고 있다. ※ 목차 ▷지난주 과제 보완 ▷객체의 치환 ▷객체 배열 ▷메서드 ▷접근 지정자 ▷static ▷final ▷과제 지난주 과제 보완 package Tutoring; import java.util.Scanner; public class Radom_num_game { public static void main(String[] args) { while (true) { Scanner ..

JAVA 2021.07.22

[JAVA] 공부 3일! (2021-07-16)

세 번째 튜터링 시간에는 예외처리 방법(try-catch) , 객체지향의 개념 , 클래스 객체를 배웠다. ▷예외처리(try-catch) ▷객체지향 개념 ▷클래스 선언 ▷생성자 ▷this 레퍼런스 ▷과제 예외처리(try-catch) import java.util.Scanner; public class DevideByZeroHandling { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while(true) { System.out.print("나뉨수를 입력하시오:"); int dividend = scanner.nextInt(); // 나뉨수 입력 System.out.print("나눗수를 입력하시오:"); ..

JAVA 2021.07.17