java中成员访问修饰符,接口与抽象类相关知识

之前关于成员访问修饰符的知识总是记了又忘,刚才又把教材书拿出来翻了翻,觉得还是按照表的格式来记忆比较好,附图。

java中成员访问修饰符,接口与抽象类相关知识_第1张图片

关于接口和抽象类,接口:没有变量,即使自己写了,最后都会被编译器变为常量,并且都是静态,最终,公有的,接口中方法必须都是抽象的,我们通常所说的java的单一继承,是对类来说的,而对于接口而言,是可以多重继承的。并且我们可以用接口声明一个对象,但这个对象必须是另一个继承了该接口的实例对象。

interface hello{ public void output(); }

public class test implements hello{
 public void output() {
  System.out.print("hello world");
 }
public static void main(String[] args){
 hello symbol=new test();
 symbol.output();
}
}

当然也可通过一个匿名内部类实现,如下图,

java中成员访问修饰符,接口与抽象类相关知识_第2张图片

而抽象类,也可通过上述方法去定义一个对象,如下,

java中成员访问修饰符,接口与抽象类相关知识_第3张图片

其中的只要有一个抽象方法,就是抽象类,对方法的修饰也没有限制,抽象类中的抽象方法一定要用abstract修饰,而接口中的则不必,因为编译器会自动添加的。

顺便提一个刚才看书时看到的一个知识点,静态方法中不能使用this,因为this是对对象的引用。



你可能感兴趣的:(java基础)