본문 바로가기

Java의 정석 : 3rd Edition

(15)
[Java의 정석 - 연습문제] Chapter16. 네트워킹(Networking) Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [16-1] ip주소가 192.168.10.100이고 서브넷 마스크(subnet mask)가 255.255.255.0일 때, 네트워크 주소와 호스트 주소를 계산하여 화면에 출력하는 프로그램을 작성하시오. 단, 비트 연산자를 사용해서 계산해야 한다. [실행 결과] 네트워크 주소 : 192.168.10.0. 호스트 주소 : 0.0.0.100. 답 : class Exercise16_1 { public static void main(String[] args) { byte[] ip = {(byte)192, (byte)168..
[Java의 정석 - 연습문제] Chapter15. 입출력(I/O) Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [15-1] 커맨드라인으로부터 파일명과 숫자를 입력받아서, 입력받은 파일의 내용을 처음부터 입력받은 숫자만큼의 라인을 출력하는 프로그램(FileHead.java)을 작성하라. [Hint] BufferedReader의 readLine()을 사용하라. C:\jdk1.8\work\ch15>java FileHead 10 USAGE: java FileHead 10 FILENAME C:\jdk1.8\work\ch15>java FileHead 10 aaa aaa은/는 디렉토리이거나, 존재하지 않는 파일입니다. C:\jdk1.8..
[Java의 정석 - 연습문제] Chapter14. 람다와 스트림(Lambda & Stream) Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [14-1] 메서드를 람다식으로 변환하여 아래의 표를 완성하시오. 메서드 람다식 int max(int a, int b) { return a > b ? a : b; } (int a, int b) -> a > b ? a : b int printVar(String name, int i) { System.out.println(name + "=" + i); } (a) int square(int x) { return x * x; } (b) int roll() { return (int)(Math.random() * 6); } ..
[Java의 정석 - 연습문제] Chapter13. 쓰레드(thread) Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [13-1] 쓰레드를 구현하는 방법에는 Thread클래스로부터 상속받는 것과 Runnable인터페이스를 구현하는 것 두 가지가 있는데, 다음의 코드는 Thread클래스를 상속받아서 쓰레드를 구현한 것이다. 이 코드를 Runnable인터페이스를 구현하도록 변경하시오. class Exercise13_1 { public static void main(String args[]) { Thread th1 = new Thread1(); th1.start(); } } class Thread1 extends Thread { pub..
[Java의 정석 - 연습문제] Chapter12. 지네릭스, 열거형, 애너테이션 Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [12-1] 클래스 Box가 다음과 같이 정의되어 있을 때, 다음 중 컴파일 에러가 발생하는 문장은? class Box { // 지네릭 타입 T를 선언 T item; void setItem(T item) { this.item = item; } T getItem() { return item; } } a. Box Box b = new Box(); b : Box Juicer.makeJuice(new FruitBox()); Juicer.makeJuice(new FruitBox()); [12-3] 다음 중 올바르지 않은 문..
[Java의 정석 - 연습문제] Chapter11. Collections Framework Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [11-1] 다음은 정수집합 1, 2, 3, 4와 3, 4, 5, 6의 교집합, 차집합, 합집합을 구하는 코드이다. 코드를 완성하여 실행결과와 같은 결과를 출력하시오. [Hint] ArrayList클래스의 addAll(), removeAll(), retainAll()을 사용하라. import java.util.*; class Exercise11_1 { public static void main(String[] args) { ArrayList list1 = new ArrayList(); ArrayList list2 ..
[Java의 정석 - 연습문제] Chapter10. 날짜와 시간 & 형식화 Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [10-1] Calendar클래스와 SimpleDateFormat클래스를 이용해서 2010년의 매월 두 번째 일요일의 날짜를 출력하시오. // 실행 결과 2010-01-10은 2번째 일요일입니다. 2010-02-14은 2번째 일요일입니다. 2010-03-14은 2번째 일요일입니다. 2010-04-11은 2번째 일요일입니다. 2010-05-09은 2번째 일요일입니다. 2010-06-13은 2번째 일요일입니다. 2010-07-11은 2번째 일요일입니다. 2010-08-08은 2번째 일요일입니다. 2010-09-12은 ..
[Java의 정석 - 연습문제] Chapter09. java.lang패키지와 유용한 클래스 Java의 정석 : 3rd Edition, 2016을 개인 학습용으로 정리한 내용입니다. "ppt 파일 자료, 연습문제"를 학습 용도로 배포할 수 있음을 고지하셨습니다. 저자님께 감사드립니다. [9-1] 다음과 같은 실행결과를 얻도록 SutdaCard클래스의 equals()를 멤버변수인 num, isKwang의 값을 비교하도록 오버라이딩하고 테스트 하시오. class Exercise9_1 { public static void main(String[] args) { SutdaCard c1 = new SutdaCard(3, true); SutdaCard c2 = new SutdaCard(3, true); System.out.println("c1 = " + c1); System.out.println("c2 =..