## 接口
**课堂代码:**
~~~java
package com.dodoke.demo4;
public interface Father {
public final static String FAMILY_NAME = "赵";
public void fatherFun();
}
~~~
~~~java
package com.dodoke.demo4;
public interface Mather {
public final static String FACE = "瓜子脸";
public void matherFun();
}
~~~
~~~java
package com.dodoke.demo4;
/**
* 接口只能继承接口,不能继承类
* @author 一教室
*
*/
public interface Person extends Father, Mather {
/**
* 常量
* 抽象方法
*/
/**
* 虽然可以省略相关修饰符,但是为了代码的可阅读性,还是建议加上
*/
public static final String PASSWORD = "#123456";
public void eatFood();
public String play();
}
~~~
~~~java
package com.dodoke.demo4;
public interface Student {
public String a = "5";//虽然因为修饰符的省略,表现形式是成员变量,但实际上还是不可变的常量
public void study();
}
~~~
~~~java
package com.dodoke.demo4;
/**
* implements表示该类实现某一个接口
* @author 一教室
*
*/
public class Test implements Person, Student{
public static void main(String[] args) {
Test test = new Test();
test.fatherFun();
test.matherFun();
test.eatFood();
test.study();
System.out.println(test.play());
System.out.println(Test.FAMILY_NAME);
System.out.println(Test.FACE);
System.out.println(Test.PASSWORD);
System.out.println(Test.a);
/**
* 类似于多态的形式,但是Person不是Test的父类。Test是Person的实现类
* 此时声明变量的类型Person,运行时类型是Person的实现类Test
*/
Person per = new Test(); //打印出来是Test类中的方法实现内容
per.eatFood();
per.fatherFun();
System.out.println(Person.FAMILY_NAME);
}
@Override
public void fatherFun() {
System.out.println("father");
}
@Override
public void matherFun() {
System.out.println("mather");
}
@Override
public void eatFood() {
System.out.println("son");
}
@Override
public String play() {
return "play football";
}
@Override
public void study() {
System.out.println("study");
}
}
~~~
- 课程开始
- 第一课20191008
- 第二课20191009
- HTML
- CSS
- CSS第一课
- CSS第二课
- CSS第三课
- CSS第四课
- CSS第五课
- JavaScript
- Js第一课
- Js第二课
- Js第三课
- Js第四课
- Js第五课
- Js第六课
- Js第七课
- Js-事件模型
- Js-2019-10-31-标准库
- Js-2019-11-01- 标准库
- Js-2019-11-01-Json
- Js-2019-11-01-对象的创建
- Js-2019-11-04-this的使用
- Js-2019-11-05-storage与异常
- Js-2019-11-05-BOM与补充知识点
- Js-2019-11-06-正则表达式和计时器
- jQuery
- jQuery-2019-11-13-初识jQuery
- jQuery-2019-11-14-jQuery节点操作
- jQuery-2019-11-15-jQuery节点操作二
- jQuery-2019-11-16-jQuery效果与动画
- Java
- Java-2019-11-27-变量直接量数据格式运算符
- Java-2019-11-28-流程控制
- Java-2019-12-02-数组
- Java-2019-12-04 面向对象
- Java-2019-12-05-封装
- Java-2019-12-06-深入构造器
- Java-2019-12-09-继承
- Java-2019-12-10-多态
- Java-2019-12-10-包装类
- Java-2019-12-11-final修饰符
- Java-2019-12-11-包装类
- Java-2019-12-11-接口
- java-2019-12-13-设计模式
- Java-2019-12-16-集合框架
- Java-2019-12-18-集合排序
- Java-2019-12-23-常用类学习
- Java-2019-12-25-异常处理
- Java-2019-12-31-内部类详解
