JAVA/16. Interface
내부클래스
날아올라↗↗
2016. 6. 29. 15:43
728x90
반응형
- package test.com;
- public class Test01Main {
- public static void main(String[] args) {
- System.out.println("Inheritance...");
- Test01AAA ta = new Test01AAA();
- ta = new Test01BBB();
- ta = new Test01CCC();
- ta.aaa();
- System.out.println("============================");
- Test01BBB tb = new Test01BBB();
- tb = new Test01CCC();
- System.out.println(tb.bbb());
- System.out.println("============================");
- Test01CCC tc = new Test01CCC();
- tc.aaa();
- tc.bbb();
- for (String x : tc.ccc()) {
- System.out.println(x);
- }
- System.out.println("============================");
- Test01DDD td = new Test01DDD() {
- //이름없는 내부 클래스 : anonymous inner class
- int x = 1000;
- @Override
- public void ddd() {
- // TODO Auto-generated method stub
- System.out.println("ddd()....111");
- }
- };
- td.ddd();
- // System.out.println("td.x : " + td.x); //접근불가
- td = new Test01EEE();
- td.ddd();
- System.out.println("============================");
- Test01EEE te = new Test01EEE();
- te.eee();
- System.out.println("te.ddd : " + te.ddd);
- }
- }
- package test.com;
- public class Test01AAA {
- int age = 33;
- String name = "daniel,kim";
- public void aaa() {
- System.out.println("age/name : " + age + "/" + name);
- }
- }
- package test.com;
- public class Test01BBB extends Test01AAA {
- int kor = 100;
- String subject = "국어";
- public String bbb() {
- System.out.println("bbb()...");
- aaa();
- return kor + subject;
- }
- }
- package test.com;
- public class Test01CCC extends Test01BBB {
- String title = "제목";
- String content = "내용";
- public String[] ccc() {
- return new String[]{title, content};
- }
- }
- package test.com;
- public abstract class Test01DDD {
- String ddd = "java";
- public abstract void ddd();
- }
728x90
반응형