// 访问每一个action的方法都会先调用此方法:前置方法 @Override public void prepare() throws Exception { System.out.println("prepare"); } // input,save方法之前执行 public void prepareInput() throws Exception { System.out.println("prepareInput:" + id); if (id != nu…
一.Lambda表达式 1.Lamdba Lambda 允许把函数作为一个方法的参数,使用Lamdba可以让开发的代码更加简洁,但是易读性差,新人不了解Lamdba表达式或者代码功底有点差,不容易读懂大佬们写的代码了. 2.Lamdba语法格式 (parameter1,parameter2.....) -> {expression;}; 参数可以是多个,也可以是1个,也可以没有参数,expression 同样是多个,或者是1个,或者无表达式 简单例子: // TODO: 2018/11/19 申…
1). 先会执行 ModelDrivenInterceptor 的 intercept 方法. public String intercept(ActionInvocation invocation) throws Exception { //获取 Action 对象: EmployeeAction 对象, 此时该 Action 已经实现了 ModelDriven 接口 //public class EmployeeAction implements RequestAware, ModelDri…
使用interface来定义一个接口.接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成.定义接口的基本格式如下: [修饰符] interface 接口名 [extends 父接口名列表]{ [public] [static] [final] 常量;  //全局常量[public] [abstract] 方法; //抽象方法} 修饰符:可选,用于指定接口的访问权限,可选值为public.如果省略则使用默认的访问权限.接口名:必选参数,用于指定接口的名称,…
一. 接口的定义 接口中定义的方法,全部都为抽象方法,默认加public abstract 接口中定义的变量,全部为全局常量,默认加public static final 二.与继承不同,子类可以同时实现多个接口 三.子类可以同时继承抽象类并实现接口吗 Demo类中改为生成子类X x=new X(); x.printA(); x.printB(); x.printC(); 四.抽象类实现接口如果不实现抽象方法可以在子类中实现 接口继承接口 类继承类 同类继承 接口抽象类的抽象方法可在子类中实现即…
抽象类是从多个类中抽象出来的模板,如果将这种抽象进行得更加彻底,则可以提炼出一种更加特殊的"抽象类"-接口(interface),Java9对接口进行了改进,允许在接口中定义默认方法和类方法,默认方法和类方法都可以提供方法实现,Java9为接口增加了一种私有方法,私有方法也可提供方法实现 接口是从多个相似类中抽象出来的规范,接口不提供任何实现,接口体现的是规范和实现分离的设计哲学. 接口定义的是多个类共同的公共行为规范,这些行为是与外部交流的通道,这就意味着接口里通常是定义一组公用方法…
在 C# 里面,接口的定义只需要类里面存在和接口声明相同的方法或属性就可以,而存在的方法或属性是在子类定义的还是基类里面定义的都无所谓.也就是在基类里面写好了方法,但不继承接口,等子类继承接口的时候就不需要子类实现方法.通过这样的方法可以在基类里面添加一些辅助方法,而这些方法默认不给子类开启,除非子类继承了接口 在基类定义的方法,如果在子类继承的接口里面声明的方法刚好和基类定义的相同,那么子类可以不需要再次定义.在基类可以判断当前自己的类型是否继承了接口 这个方法用在基类里面期望在特定的代码里面…
#34.编写2个接口:InterfaceA和InterfaceB:在接口InterfaceA中有个方法void printCapitalLetter():在接口InterfaceB中有个方法void printLowercaseLetter():然 后写一个类Print实现接口InterfaceA和InterfaceB,要求      方法 实现输出大写英文字母表的功能,printLowercaseLetter()方法实现输出小写英文 字母表的功能.再写一个主类E,在主类E的main方法中创建P…
今天碰到一个很有意思的问题,在java中如果子接口中定义了与父接口中已经有的方法会发生什么事情呢?比如: interface IRunnable extends Runnable{ void run(); } 刚开始我还以为这样子的语法应该不能通过编译器,没有想到这样子做编译器并没有做出任何警告. 当然大多数情况下我们都不会这么做,因为这样做似乎没有什么意义.但为了真相,我还是做了个小实现: public class InterfaceDebug{ public static void main…
package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.RuntimeErrorException; /* 可以对set集合中的元素进行排序,其底层的数据结构是二叉树, 保证元素唯一性的依据是compareTo和return 0; TreeSet排序的第一种方式 让元素自身具备比较性 元素需要实现Comparable接口,覆盖compareTo方法 这种方式…