1.接口中的方法是抽象方法,且都是public的。
接口可以定义成员变量。接口中的成员变量都是public、final、static的。
public interface InterfaceTest
{
int a = 1;//等同于 "public static final int a = 1;",常省略。
}
2.一个类不能既是final,又是abstract的。因为abstract的主要目的是定义一种约定,让子类去实现这种约定;而final表示该类不能被继承。
public abstract final class Test//无法编译、执行。
{
}
3.单例模式Singleton:一个类只能生成唯一一个对象。
public class SingletonTest
{
public static void main(String[] args)
{
Singleton singleton = Singleton.getInstance();
Singleton singleton2 = Singleton.getInstance();
System.out.println(singleton == singleton2);//true.
}
}
class Singleton
{
private static Singleton singleton = new Singleton();
private Singleton()
{
}
public static Singleton getInstance()
{
return singleton;
}
}
public class SingletonTest
{
public static void main(String[] args)
{
Singleton singleton = Singleton.getInstance();
}
}
class Singleton
{
private static Singleton singleton;
private Singleton()
{
}
public static Singleton getInstance()
{
if(singleton == null)
{
singleton = new Singleton();
}
return singleton;
}
}