본문 바로가기

이번주 목표/할 일

8월 2주차

주말

 

ConstructorPractice 2 3

 

 

   m2(Member2) 은 그냥 name을 가져올수 있지만
   m1(Member) 은 private를 사용하여서 name을 가져오려면
   get set 메소드를 통해서 private 해당 변수에 접근   

 

   아래코드는 Member 클래스의 일부이다 나머지는 주석을 참고하자

 

 

 

 

 

 


ExtendsPractice

 

 

InterfacePractice2-3

 

 - Interface2

 

<Coffee> 와 관련된 객채만 넣을 수 있는 리스트이다.

Coffee 인터페이스를 구현하고있는 MYStyleCoffe 와 shopStyleCoffe 클래스를 추가하고 있다

 

 

위 코드는 toString을 Override로 재정의하여 출력의 폼을 만들었다

그래고 아래에서 toString을 받아서 출력

 

아래코드는 바로 void coffeeOrder() 메소드에서 출력

 

 

 

 - Interface3

 

클래스 Oracle, MySQL.. 뒤의 implements Connector는 이 클래스가 인터페이스 Connector를 구현하고 있다는 의미다. 그것은 interface Connector 의 맴버인 void connect() 메소드를 클래스 Oracle, MySQLConnector 반드시 포함하고

있어야 한다는 뜻이다.  

 

extends

   사실 extends가 상속의 대표적인 형태이다.

   모든 선언/정의를 부모가 하며, 자식은 오버라이딩 할 필요 없이 부모의 메소드/변수를 그대로 사용할 수 있다.

 

implements

   부모는 선언만 하며, 반드시 자식이 정의를 오버라이딩해서 사용한다.

   일반클래스에서 인터페이스 구현 가능

 

 

 

 

월요일 자습
FileExample 

1 2 3 4 5 6

 

FIleExample

 

FileExample1의 이미지 파일 출력부분 for문

배열의 향상된 for문

  "for(대입받을 변수정의 : 배열명)" 으로 구성되어있다

  imageFiles 배열 항목을 하나씩 fileName 에 대입하여  실행하게 된다

 

FileExample1의 파일 생성부분 try catch문

try-catch문

  try블록에는 예외가 발생할 수 있는 코드가 위치

  try 블록의 코드에서 예외가 발생하면 즉시 실행을 멈추고

  catch 블록으로 이동하여 예외처리 코드를 실행

 

FileExample3

FileOutputStream  = 특정 대상 파일로 내용을 write 출력

String msgbyte로 가져와서 사용

 

 

FileExample4

ByteArrayOutputStream = 바이트 계열 데이터를 메모리로 출력하는 기능

 

 

 

FileExample5

 

fo = new FileOutputStream("절대/상대경로");  : 특정 파일을 만들고

dos= new DataOutputStream(fo);  : Java -> file (Output) 으로 만든파일(fo) 로 보내기

 

fi= new FileInputStream("절대/상대경로");
dis= new DataInputStream(fi); : file -> Java (Input) 으로 파일내용 자바로 보내기

 

System.out.println(dis.readUnsignedShort());

  65535가 나오는 이유  : unsigned(음수없음), short 는 2바이트 따라서  2^16
  sign(부호가 있음) 의 1 byte는 , 2^7

  unsigned 의 1 byte는 2^8 (부호자리가 필요없어서)

 

dis.skip(n);

  이 자리의( 코드에선 readByte ) byte n개를 스킵 : 3이 스킵된다

 

 

FileExample6

  BufferedWriter 클래스는 flush를 해주어야 데이터가 최종적으로 출력된다

'이번주 목표 > 할 일' 카테고리의 다른 글

9월 3주차  (0) 2021.09.18
9월 2주차  (0) 2021.09.10
9월 1주차  (0) 2021.09.04
8월 4주차  (0) 2021.08.23
8월 3주차  (0) 2021.08.18