Java笔记:包与接口

Posted arseneyao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java笔记:包与接口相关的知识,希望对你有一定的参考价值。

一、包

使用package关键字声明包。包的作用相当于命名空间。若没有显式地声明类所属的包,那么类将会被放到默认的包中,默认的包没有名称。包支持层次化地创建,即支持嵌套。

使用import关键字导入包。支持导入包中的类或包,若不导入声明变量则需要写上完整的路径。

import java.lang.*;//导入包
import java.util.ArrayList;//导入类

class Solution {
    ArrayList arrayList;//已导入
    java.util.LinkedList linkedList;//未导入
}

 

二、接口

声明接口。接口的普通方法不能存在具体实现。

interface Color {
    void setColor(int color);
    int getColor();
}

interface Line {
    void setLength(int length);
    int getLength();
}

 

实现接口。类可以同时实现多个接口。

class ColorfulLine implements Color, Line {
    int color;
    int length;

    ColorfulLine(int color, int length) {
        this.color = color;
        this.length = length;
    }

    @Override
    public void setColor(int color) {
        this.color = color;
    }

    @Override
    public int getColor() {
        return color;
    }

    @Override
    public void setLength(int length) {
        this.length = length;
    }

    @Override
    public int getLength() {
        return length;
    }
}

 

嵌套接口。接口为类或其他接口的成员时,有更多的访问限制选择。

class A {
    public interface i {
        boolean isNegative(int x);
    }
}

class B implements A.i {
    @Override
    public boolean isNegative(int x) {
        return x < 0;
    }
}

 

接口变量。可使用接口将共享的常量导入多个类种。

interface RBG {
    int RED = 0;
    int BLUE = 1;
    int GREEN = 2;
}

 

扩展接口。接口可以继承其他接口。

interface Color extends RBG {
    int ORANGE = 3;
    int YELLOW = 4;
    int CYAN = 5;
    int PURPLE = 6;
}

 

默认实现。接口可声明默认方法并可重写。

interface i {
    default void show() {
        System.out.println("Hi");
    }
}

class A implements i {
    @Override
    public void show() {
        System.out.println("Hello");
    }
}

 

变量成员与静态方法可直接被调用。

interface i {
    int val = 0;

    static void show() {
        System.out.println(val);
    }
}

class Solution {
    public static void main(String[] args) {
        i.show();
        System.out.println(i.val);
    }
}

 

以上是关于Java笔记:包与接口的主要内容,如果未能解决你的问题,请参考以下文章

java 代码片段

java学习之内部类包与代码块

Apache Hadoop压缩包与Eclipse结合,导入jar包归整总结

Java 包与修饰符

LaTex实战笔记 3-宏包与控制命令

java jar包与配置文件的写法