记录学习Java的问题和经验——3
1.多态:好处:可提高了程序扩展性,减小耦合,但前期还需子类覆盖父类的方法和属性
//多态:父类 对象 = new 子类
Animal Dog;//父类引用父类引用指向子类对象
Animal Dog = new Dog();//父类引用指向子类对象
2.抽象类:抽象类不能实例化(变成对象),只能通过子类实现实例化
public abstract void eat();//抽象类,一般在父类中定义,约束子类中必须要有的方法,不关心子类实现的方法(子类可自行实现方法)。
@Overridepublic
abstract void eat() {
// TODO Auto-generated method stub
System.out.println("吃的抽象类");
}
3.接口:接口内部都是常量和抽象方法,
接口:也是一种规范,定义了某些类必须实现某些
抽象方法和常量
。
定义接口时:系统默认添加public abstract static final
//接口定义:
//[修饰符]interface 接口名 [extends 父接口1,父接口2...]
public interface IPlay {
public void playGame();
}
//接口实现(使用):
//[修饰符]class 类名 extends 父类 implements 接口1,接口2...
//接口用法
public class EE extends Te implements IPlay {
IPlay ip1 = new EE();
ip1.playGame();
//接口用法2
IPlay ip2 = new IPlay(){
public void playGame() {
// TODO Auto-generated method stub
System.out.println("玩游戏接口2");
}
};
ip2.playGame();
//接口用法3
new IPlay(){
public void playGame() {
// TODO Auto-generated method stub
System.out.println("玩游戏接口3");
}
}.playGame();
}