day15
java接口:对行为进行抽象(抽象方法)
public interface 接口名{}
可以再接口中直接定义一个抽象方法
类不能继承接口,用implements(实现)public class 类名 implements 接口名{}
接口也不能实例化,但可通过多态实现对象实例化(接口多态)
1.接口中无变量,只有成员常量,默认修饰符 public static final
2.常量可以直接用 接口名.常量名 来调用数据,且默认定义为静态
3.无构造方法,因为接口主要是对行为进行抽象,没有具体存在
4.接口中不存准非抽象方法,默认修饰符 public abstract
5.一个类如果没有父类,默认继承Object类(当中只有无参构造)
实例
1.创建一个接口
package T002;
public interface jump {
void jumpping();
}
2.创建一个动物类
package T002;
public abstract class Animal {
private int age;
private String name;
Animal(){}
public Animal(String name,int age)
{
this.name=name;
this.age=age;
}
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return name;
}
public void setAge(int age)
{
this.age=age;
}
public int getAge()
{
return age;
}
public void show()
{
System.out.println(name + "," + age);
}
public abstract void eat();
}
3.创建一个继承动物类并实现接口的猫类
package T002;
public class Cat extends Animal implements jump{
public Cat() {}
public Cat(String name,int age)
{
super(name,age);
}
public void jumpping()
{
System.out.println("猫可以跳高了");
}
public void eat()
{
System.out.println("猫吃鱼");
}
}
4.实现
package T002;
public class demo {
public static void main(String[] args)
{
jump j= new Cat();
j.jumpping();
Animal c = new Cat();
c.eat();
c.setName("露西");
c.setAge(5);
c.show();
System.out.println("-------------");
c = new Cat("丽丽",7);
c.show();
}
}

浙公网安备 33010602011771号