카테고리 없음
20250529_java(추상클래스, 인터페이스)
by greentworkshop
2025. 5. 29.
interface Greeting{
void sayHello();
}
public class GreetingEx {
public static void main(String[] args) {
//Hello_Greetig greeting=new Hello_Greeting() {
Greeting greeting = new Greeting(){
public void sayHello() {
System.out.println("Hello Everybody");
}
};
greeting.sayHello();
}
}
/*람다식으로 변환
interface Greeting{
void sayHello();
}
public class GreetingEx {
public static void main(String[] args){
Greeting greeting = ();
Systme.out.println("Hello Everybody");
greeting.sayHello();
}
}
*/
/*----------------------------------------------------------------------------------------
interface Greeting{
void sayHello();
}
class Hello_Greeting implements Greeting{
@Override
public void sayHello() {
System.out.println("Hello Everybody");
}
}
public class GreetingEx {
public static void main(String[] args) {
//Hello_Greetig greeting=new Hello_Greeting();
Hello_Greeting greeting = new Hello_Greeting();
greeting.sayHello();
}
}
*/
abstract class Animal {
public abstract void sound();
public void sleep() {
System.out.println("Sleeping...");
}
}
// 정식 클래스 상속 예시 (사용하진 않지만 오류는 수정)
class Dog extends Animal {
@Override
public void sound() {
System.out.println("Woof Woof");
}
}
public class Main05 {
public static void main(String[] args) {
// 익명 내부 클래스 형태로 Animal 구현
Animal dog = new Animal() {
@Override
public void sound() {
System.out.println("Woof Woof");
}
};
dog.sound(); // 대소문자 수정
dog.sleep(); // 대소문자 수정
}
}
interface MyInterface{
public void method();
}
class Inf implements MyInterface {
@Override
public void method() {
System.out.println("aaa");
}
} ;
public class Main04 {
public static void main(String[] args) {
MyInterface sub=()-> {
System.out.println("sub1");
sub.method();
}
}
//람다식 변환