목록JAVA/복습 (25)
Frog is cry
package 오브젝트.ex01; import java.util.Random; // 객층 관계도 단축키 Ctrl + T public class ObjectTest { public static void main(String[] args) { // object에서 equals를 사용하면 주소값을 비교한다 String data1 = new String("ABC"); String data2 = new String("ABC"); String data3 = "ABC"; String data4 = "ABC"; Random r = new Random(); Random r2 = new Random(); System.out.println(data1 == data2); System.out.println(data1.equal..
package Wrapper.ex01; public class Wrapper { public static void main(String[] args) { String str = new String("1"); //jak 1.5 버전 전에는 무조건 이렇게 사용해야 한다. String str2 = "1"; // 오토 박싱 Integer data = 10; // 오토 박싱 int data2 = data; // 오토 언박싱 System.out.println(str); } } package Wrapper.ex01; public class Wrapper2 { public static void add(Object a, Object b) { //문자열로 바꿔준 후 연결 해주는 메서드 System.out.println(S..
package 예외처리; public class Try { public static void main(String[] args) { //System.out.println(10/0); //System.out.println("종료"); //분모가 0이라 오류가 발생함 //위에칸이 오류라 아랫칸에있는 종료를 출력할수 없지만 //무조건 종료를 출력해주고 싶을때 사용함. try { System.out.println(10/0); } catch (ArithmeticException e) { System.out.println("0으로 나눌 수 없습니다."); System.out.println(e.getMessage());// 어떤 오류메세지인지 출력 e.printStackTrace();// 오류 내용까지 출력 } Sy..
package 익명클래스; import java.awt.Button; import java.awt.Frame; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; public class ButtonTest extends Frame{ public ButtonTest() { super("익명 클래스 테스트"); Button btn = new Button("눌러!"); add(btn); setSize(500, 500); addWindowList..
package 내부클래스; //InnerClass public class OutClass { int outData; public OutClass() { System.out.println("외부 클래스 생성자 호출 됨."); } public void showOuter() { System.out.println("외부 클래스의 메서드 호출 됨."); } public class InnerClass{ int inData; public InnerClass() { System.out.println("내부 클래스의 생성자 호출 됨."); } private void showInner() { outData = 20; System.out.println("내부 클래스의 메서드 호출 됨."); System.out.println..
package For_Each; public class Arr { public static void main(String[] args) { //String[] arData = {"안녕", "반가워", "이름이", "뭐니?"}; //for(String i : arData) { //System.out.println(i); int[][] arrScore = { {10,20,30}, {11,24,39}, {12,26,38}, {13,27,37}, {14,28,36} }; int cnt = 0; int total = 0; double avg = 0.0; //각 학생별 총점과 평균 출력하기 //빠른 for문으로 for(int[] arScore : arrScore) { total = 0; cnt++; for(int ..
인터페이스와 추상클래스의 차이를 알아보자 ! 설명 : 클래스는 크게 일반 클래스와 추상 클래스로 나뉘는데 추상 클래스는 클래스 내 '추상 메소드'가 하나 이상 포함되거나 abstract로 정의된 경우를 뜻한다. 반면 인터페이스는 모든 메소드가 추상 메소드인 경우입니다. ★★★★★ (JAVA8 에서는 defalt 키워드로 일반 메소드의 구현도 가능) 추상 클래스와 인터페이스는 상속받는 클래스 혹은 구현하는 인터페이스 안에 있는 추상 메소드를 구현하도록 강제한다. Q&A : 둘 다 추상 메소드를 구현하는 일을 하는데 굳이 왜 둘다 필요한지? 우선 인터페이스와 추상 클래스는 존재 목적이 다름. 1. 추상 클래스는 그 추상 클래스를 상속받아서 기능을 이용하고, 확장시키는데 있음. 2. 인터페이스는 함수의 껍데기..
ex01 package 인터페이스.ex05; public interface RemoteControl { //상수 int MAX_VOLUME = 10; int MIN_VOLUME = 0; //메소드 void turnOn(); //public abstract 를 생략해도 기본적으로 들어감 void turnOff(); void setVolume(int volume); } package 인터페이스.ex05; public interface Searchable { void search(String url); } package 인터페이스.ex05; public class SmartTelevision_Ex { public static void main(String[] args) { SmartTelevision tv =..