• 抽象类使用的原因小记,接口中的静态方法


      ①让接口和实现类分离,更加具有规范性

      ②具有一种提示作用,抽象类中定义的抽象方法都是需要子类实现的,接口定义了很多的规范,但是没有具体的实现,如果不考虑默认方法的话,但是在这种情况下,如果大多数类都有某个指定性的方法的话,可以让抽象类去实现接口并且实现这个方法,(当然抽象类可以实现这个接口但是不实现接口的方法),所以可以指定其中的通用性的行为去实现,并将更具有不同性的方法包装成抽象方法让子类去多态性的实现,这也是一种层次性的抽象设计实现。这样子实现类就可以获取这种常态性的行为,并且可以多态地实现自定义的方法。

      接口中的静态方法不允许被实现类继承,只能供接口自己调用,并且接口中的静态属性是可以被实现类继承的,但是不可被修改,因为接口既然是规范,里面的属性都是默认被static final修饰的:

    public interface interface1 {
    	String str = "你好";
    
    	static void interfaceFunction() {
    		System.out.println("hello");
    	}
    }
    

      

    public class InterfaceStaticFieldTest implements interface1 {
    	public static void main(String[] args) {
    		InterfaceStaticFieldTest cc = new InterfaceStaticFieldTest();
    		// 接口中的静态方法并不会被实现类继承,只供接口自己调用实现
    		interface1.interfaceFunction();
    		// 接口中的静态属性是可以被实现类继承的,不可被修改
    		System.out.println(cc.str);
    	}
    }
    

      

  • 相关阅读:
    CompletableFuture java 8新增加异步处理
    Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore , Condition
    怎么让一个不定宽高的div垂直水平居中?
    数组对象方法排序
    Webpack ERROR in Path must be a string. Received undefined
    es6 babel转码器安装配置及常见命令
    使用淘宝镜像cnpm安装Vue.js
    JS中的call()和apply()方法
    placeholder颜色更改
    typeof与js数据类型
  • 原文地址:https://www.cnblogs.com/dashenaichicha/p/12720534.html
Copyright © 2020-2023  润新知