当前位置: 首页 > news >正文

网站建设基本知识网站推广定义

网站建设基本知识,网站推广定义,社群电商的运营模式,网站开发简历项目文章目录一、匿名内部类1. 语法格式2. 使用方法① 传统方式② 匿名内部类方式二、Lambda表达式1. 语法格式2. 使用方法① 匿名内部类方式② Lambda表达式方式三、方法引用1. 语法格式2. 使用方法① 类型的静态方法引用② 类型的构造方法引用③ 类型的实例方法引用④ 对象的实例… 文章目录一、匿名内部类1. 语法格式2. 使用方法① 传统方式② 匿名内部类方式二、Lambda表达式1. 语法格式2. 使用方法① 匿名内部类方式② Lambda表达式方式三、方法引用1. 语法格式2. 使用方法① 类型的静态方法引用② 类型的构造方法引用③ 类型的实例方法引用④ 对象的实例方法引用四、匿名内部类、Lambda表达式、方法引用对比分析总结一、匿名内部类 匿名内部类可以看作是特殊的局部内部类其本质就是一个继承类或实现接口的匿名子类。 匿名内部类是在使用的时候动态的指定方法体的逻辑无需每次都去创建一个继承类或实现接口的子类。编译器会在编译阶段自动生成一个匿名子类。 1. 语法格式 匿名内部类的语法格式new 接口名类名(){重写方法} 其中如果重写方法为非必要的原则上是可以没有重写方法部分的。 2. 使用方法 ① 传统方式 父子类 public class ParentClass {public void aa(String str) {}public void bb(String str) {} }public class ChildClass extends ParentClass {Overridepublic void aa(String str) {System.out.println(自定义方法体);}Overridepublic void bb(String str) {System.out.println(自定义方法体);} }public class Test {public static void main(String[] args) {ParentClass ohj new ChildClass();} }接口实现类 public interface ParentInterface {void aa(String str);void bb(String str); }public class ChildClass implements ParentInterface {Overridepublic void aa(String str) {System.out.println(自定义方法体);}Overridepublic void bb(String str) {System.out.println(自定义方法体);} }public class Test {public static void main(String[] args) {ParentInterface ohj new ChildClass();} }② 匿名内部类方式 父子类 public class ParentClass {public void aa(String str) {}public void bb(String str) {} }public class Test {public static void main(String[] args) {ParentClass obj new ParentClass() {Overridepublic void aa() {System.out.println(自定义方法体);}Overridepublic void bb() {System.out.println(自定义方法体);}};} }接口实现类 public interface ParentInterface {void aa(String str);void bb(String str); }public class Test {public static void main(String[] args) {ParentInterface obj new ParentInterface() {Overridepublic void aa() {System.out.println(自定义方法体);}Overridepublic void bb() {System.out.println(自定义方法体);}};} }二、Lambda表达式 从Java8开始引入了Lambda表达式。 对于只有一个抽象方法的接口函数式接口可以直接使用Lambda表达式创建它的匿名实现类实例。 使用匿名内部类方式定义的内部类编译之后会生成一个单独的class字节码文件外部类名$编号.class使用Lambda表达式定义的内部类编译之后不会生成一个单独的class字节码文件对应的字节码会在运行的时候动态生成。 1. 语法格式 Lambda表达式的语法格式(参数列表) - {方法体} 省略写法 小括号内参数的参数类型可以省略小括号内无参数时小括号不可省略小括号内只有一个参数时小括号可以省略小括号内有多个参数时小括号不可省略大括号内有且只有一行语句时可以省略 2. 使用方法 public interface ParentInterface {void aa(String str); }① 匿名内部类方式 public class Test {public static void main(String[] args) {ParentInterface obj new ParentInterface() {Overridepublic void aa(String str) {System.out.println(自定义方法体);}};} }② Lambda表达式方式 public class Test {public static void main(String[] args) {ParentInterface obj str - System.out.println(自定义方法体);} }三、方法引用 方法引用是对Lambda表达式进一步简化借用其他类的方法体省去了写方法体的过程。 对于方法体只有一行代码的Lambda表达式该行代码为调用某个类或某个实例的方法时可以简洁为更简单的方法引用的方式。 1. 语法格式 方法引用的语法格式 语法种类语法格式示例参数对应关系类型的静态方法引用类::静态方法String::valueOf抽象方法的参数与静态方法的参数顺序对应类型的构造方法引用类::newString::new抽象方法的参数与构造方法的参数顺序对应类型的实例方法引用类::实例方法String::replaceAll抽象方法的第一个参数为调用引用方法的实例对象抽象方法的剩余参数与实例方法的参数顺序对应对象的实例方法引用对象::实例方法s::replaceAll实例对象s为外部参数抽象方法的参数与实例方法的参数顺序对应 需要注意 当接口的抽象方法无返回值时方法引用的方法有无返回值都可以当接口的抽象方法有返回值时方法引用的方法也必须有返回值且返回值类型 instanceof 接口的抽象方法返回值类型 2. 使用方法 ① 类型的静态方法引用 类型的静态方法引用类名::静态方法 对应Lambda表达式(参数1,参数2,…) - 类名.静态方法(参数1,参数2,…) FunctionalInterface public interface ParentInterface {String aa(String s); }public class Test {public static void main(String[] args) {// 类型的静态方法引用ParentInterface parentInterface1 String::valueOf;// 对应Lambda表达式方式ParentInterface parentInterface2 s - String.valueOf(s);} }② 类型的构造方法引用 类型的构造方法引用类::new 对应Lambda表达式(参数1,参数2,…) - new 类名(参数1,参数2,…) FunctionalInterface public interface ParentInterface {String aa(String s); }public class Test {public static void main(String[] args) {// 类型的构造方法引用ParentInterface parentInterface1 String::new;// 对应Lambda表达式方式ParentInterface parentInterface2 s - new String(s);} }③ 类型的实例方法引用 类型的实例方法引用类::实例方法 对应Lambda表达式(参数1,参数2,…) - 参数1.静态方法(参数2,…) FunctionalInterface public interface ParentInterface {String aa(String s1, String s2, String s3); }public class Test {public static void main(String[] args) {// 类型的实例方法引用ParentInterface parentInterface1 String::replaceAll;// 对应Lambda表达式方式ParentInterface parentInterface2 (s1,s2,s3) - s1.replaceAll(s2,s3);} }④ 对象的实例方法引用 对象的实例方法引用对象::实例方法 对应Lambda表达式(参数1,参数2,…) - 对象.静态方法(参数1,参数2,…) FunctionalInterface public interface ParentInterface {String aa(String s1, String s2); }public class Test {public static void main(String[] args) {String s ;// 对象的实例方法引用ParentInterface parentInterface1 s::replaceAll;// 对应Lambda表达式方式ParentInterface parentInterface2 (s1,s2) - s.replaceAll(s1,s2);} }四、匿名内部类、Lambda表达式、方法引用对比分析总结 Lambda表达式是匿名内部类的简写匿名内部类为函数式接口的实现的这种方法引用是Lambda表达式的简写Lambda表达式的方法体只有一行代码且该行代码方法调用
http://www.hkea.cn/news/14532646/

相关文章:

  • 站点建设网站云服务器里面做网站播放器
  • 网站空间pdf下载不了深圳企业网站制作推广运营
  • 设计一个官方网站推广广告莱芜金点子最新招工招聘启事
  • 好看的网站ui河北专业网站制作
  • psd网站做设计的网站商家入驻
  • 泰兴市城乡住房建设局网站一线设计公司
  • 大淘客做的网站可以吗网站开发流程的8个步骤
  • 现在标书都从哪个网站下载视觉传达设计考研
  • 网站怎么经营公司用wordpress建站用花钱
  • 网站开发的知识站酷海洛设计网站官网
  • 达州住房和城乡建设部网站软件下载网站排行榜
  • 网站上线准备工作wordpress前台登录
  • html5网站后台怎么做网站后台安装
  • wordpress分类高亮台州网站seo
  • 网站网站建设培训给vps安装wordpress
  • 无锡网站制作公司哪家好wordpress 导航栏插件
  • 网站排名代做天眼查官网在线查询
  • 做房产中介网站企业展厅怎么设计
  • 做地方黄页网站写文章赚稿费的app
  • 铜仁市建设局网站wordpress 如何使用两个主题
  • 广州优质网站建设案例安卓网站开发视频
  • 自动做微网站windows.net做网站
  • 企业电子网站的建设案例分析正规网站建设多少钱
  • 域名和网站wordpress分享qq
  • 新建网站怎么做优化购物网站主页设计图
  • 个人网站的优点做简单网站需要学什么软件有哪些内容
  • 手机如何搭建网站网站图标生成
  • 网站开发赚钱关键词优化价格
  • 微网站用什么做的档案网站建设的意义
  • 网站建设要准备的内容专门做调研的网站