学了java的接口,对接口做了一个小总结和一个小的程序,帮助理解接口在这里插入代码片
package jiekou;
public interface MyInterface{
static String name=null;//接口中的变量必须赋初值,接口中的变量都是static final()默认的,static可以不写
void eat();
int sum();
}
package jiekou;
public interface MyInface2 {
String swe();
float det();
}
package jiekou;
public class Test implements MyInterface,MyInface2 {
//接口的实现
//接口一旦实现就必须实现接口中的所有方法
//继承只能是单继承,接口可以是多个,使用逗号隔开
//接口不可以被实例化
//接口中的变量必须赋初值,接口中的变量都是static final()默认的
public Test() {
}
@Override
public void eat() {
}
@Override
public int sum() {
return 0;
}
@Override
public String swe() {
return null;
}
@Override
public float det() {
return 0;
}
}
下面是一个实战的程序
写一个功能不一样的手机,非智能手机(打电话,发短信);智能手机(拍照,播放音乐,联网)
package com.uplooking2.Factory;
//定义了拍照功能的接口
public interface cemana {
void cemana();
}
package com.uplooking2.Factory;
//定义了联网的接口
public interface inter {
void internet();
}
package com.uplooking2.Factory;
//定义了播放音乐的接口
public interface play {
void play();
}
package com.uplooking2.Factory;
//定义了一个公共的类
//定了所有手机具有的功能
public abstract class gongneng {
private String brand;
private String type;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public abstract void call();//打电话
public abstract void messaage();//发短信
public void print(){
System.out.println("该手机的品牌为:"+brand+"\t该手机的型号为:"+type);
}
}
package com.uplooking2.Factory.immpl;
import com.uplooking2.Factory.cemana;
import com.uplooking2.Factory.gongneng;
import com.uplooking2.Factory.inter;
import com.uplooking2.Factory.play;
//定了一个智能手机的类
public class newphone extends gongneng implements cemana, inter, play {
//方法的重写
@Override
public void call() {
System.out.println("具有打电话的功能");
}
@Override
public void messaage() {
System.out.println("具有发信息的功能");
}
@Override
public void cemana() {
System.out.println("具有照相的功能");
}
@Override
public void internet() {
System.out.println("具有联网的功能");
}
@Override
public void play() {
System.out.println("正在播放音乐:"+"过了今天我就不爱了" );
}
}
package com.uplooking2.Factory.immpl;
import com.uplooking2.Factory.gongneng;
import com.uplooking2.Factory.cemana;
//定义了一个非智能手机类
public class oldphone extends gongneng implements cemana {
public oldphone() {
}
@Override
public void call() {
System.out.println("具有打电话的功能");
}
@Override
public void messaage() {
System.out.println("具有发信息的功能");
}
@Override
public void cemana() {
System.out.println("具有照相的功能");
}
}
``
```java
package com.uplooking2.Factory.Test;
import com.uplooking2.Factory.immpl.newphone;
import com.uplooking2.Factory.gongneng;
测试类
public class test {
public static void main(String[] args) {
//newphone p= new newphone();
gongneng p=new newphone();
p.setBrand("三星");
p.setType("Glacx");
p.print();
p.call();
p.messaage();
newphone p1=new newphone();
p1.cemana();
p1.messaage();
p1.internet();
}
}