java基础-四种方法引用

实例

  直接三角形,通过两边算第三边,目的是为了如何使用这几种方法引用。代码中多有些不合适,尽情原谅。

静态方法引用

   接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致。

   调用

    

    //静态引用
    IStaticSide staticSide = Five::getStaticSize;
    staticSide.getStaticSize(3, 6);

    

  类中定义

  

    //静态引用
    public static double getStaticSize(double s,double s2)
    {
      return Math.sqrt(s*s+s2*s2);
    }

  定义接口

    interface IStaticSide{

      double getStaticSize(double s,double s2);
    }

实例引用

  接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致。

  调用

  

  Five five = new Five(3,4);

  //实例引用方法
  ILastSide side=five::getTheLastSide;
  System.out.println("实例引用,方法第三边的结果:"+side.getLastSide());

  类中定义

  // 类型引用
  public double getFiveLastSide(Five f) {
    return Math.sqrt(this.side1 * this.side1 + this.side1 * this.side1);
  }

  定义接口

  interface ILastSide {
    double getLastSide();
  }

类型引用

    类中定义的方法只有一个参数,就是对比的类,也就是定义接口中的第二个参数

定义的接口必须是两个参数,第一个参数指的引用的类,第二个参数指的是对比的类

  调用

  //类型引用
  ILastFiveSide typeside = Five::getFiveLastSide;
  System.out.println("类型引用,第三边的结果:"+typeside.getLastSide(five, five));

  类中定义

  // 类型引用
  public double getFiveLastSide(Five f) {
    return Math.sqrt(this.side1 * this.side1 + this.side1 * this.side1);
  }

  接口定义

  interface ILastFiveSide {

    double getLastSide(Five f, Five f2);

  }

构造引用

  引用构造器,通过例子也就是引用后返回的是对象,然后通过对象再调用相应的方法执行。

  调用

  //构造器引用
  IGetInstance instace = Five::new;
  System.out.println("构造器引用,第三边的结果:"+instace.getInstance(1,2).getTheLastSide());

  类中定义

  // 构造器引用
  public Five getInstance(double s, double s2) {
    return new Five(s, s2);
  }

  接口定义

  // 接收引用后的结果接口
  interface IGetInstance {

    Five getInstance(double s, double s2);
  }

后话

  只是自己通过简单的例子总结,如有不对的地方希望大神门指点江山。自己之前都是从事.net开发,java方面的知识确实不足,希望多多谅解,不想坑队友。

时间: 2024-10-23 13:33:23

java基础-四种方法引用的相关文章

java 基础 四种权限修饰符

/** * Java有四种权限修饰符: * public > protected > (default) > private * 同一个类 YES YES YES YES * 同一个包 YES YES YES NO * 不同包子类 YES YES NO NO * 不同包非子类 YES NO NO NO * * 注意:(default)并不是关键字default,而是什么都不写. */ 原文地址:https://www.cnblogs.com/mantishell/p/11801662.h

Java的四种引用方式

java内存管理分为内存分配和内存回收,都不需要程序员负责,垃圾回收的机制主要是看对象是否有引用指向该对象. java对象的引用包括  强引用,软引用,弱引用,虚引用 Java中提供这四种引用类型主要有两个目的: 第一是可以让程序员通过代码的方式决定某些对象的生命周期: 第二是有利于JVM进行垃圾回收. 下面来阐述一下这四种类型引用的概念: 1.强引用 是指创建一个对象并把这个对象赋给一个引用变量. 比如: Object object =new Object(); String str ="he

【转载】Java的四种引用

在Java中,虽然不需要程序员手动去管理对象的生命周期,但是如果希望某些对象具备一定的生命周期的话(比如内存不足时JVM就会自动回收某些对象从而避免OutOfMemory的错误)就需要用到软引用和弱引用了. 从Java SE2开始,就提供了四种类型的引用:强引用.软引用.弱引用和虚引用.Java中提供这四种引用类型主要有两个目的:第一是可以让程序员通过代码的方式决定某些对象的生命周期:第二是有利于JVM进行垃圾回收.下面来阐述一下这四种类型引用的概念: 1.强引用(StrongReference

转载:Java的四种引用方式

原文:https://www.cnblogs.com/huajiezh/p/5835618.html Java内存管理分为内存分配和内存回收,都不需要程序员负责,垃圾回收的机制主要是看对象是否有引用指向该对象. java对象的引用包括  强引用,软引用,弱引用,虚引用 Java中提供这四种引用类型主要有两个目的: 第一是可以让程序员通过代码的方式决定某些对象的生命周期: 第二是有利于JVM进行垃圾回收. 下面来阐述一下这四种类型引用的概念: 1.强引用 是指创建一个对象并把这个对象赋给一个引用变

JAVA实现单例模式的四种方法和一些特点

JAVA实现单例模式的四种方法和一些特点,需要的朋友可以参考一下 一.饿汉式单例类 复制代码 代码如下: public class Singleton  {      private Singleton(){ } private static Singleton instance = new Singleton(); private static Singleton getInstance(){          return instance;      }  } 特点:饿汉式提前实例化,没有

Java的四种引用源代码例子

Java的四种引用源代码例子 不解释,直接上代码,千言万语顶不住一行代码. package com.apkkids.javalanguage; import java.lang.ref.PhantomReference; import java.lang.ref.Reference; import java.lang.ref.ReferenceQueue; import java.lang.ref.SoftReference; import java.lang.ref.WeakReference

Java解析XML文件的四种方法

[摘要] 可扩展标志语言(XML)在实现信息标准化.信息的交流与共享上有其独特的技术优势,因此受到了广泛的重视.本文先简单的介绍了XML基本知识,然后从XML应用入手总结了四种现今最常见的XML的解析方法,介绍了这四种方法的特点,其中包括优点与不足之处.最后给出了一个简单的案例来对这四种解析进行代码介绍. [关键字] XML文件,DOM,SAX,JDOM,DOM4J [引言] XML即可扩展标记语言(EXtensible Markup Language),是标准通用标记语言的子集,是一种用于标记

java中定时器的四种方法

1 package com.lid; 2 3 import java.util.Calendar; 4 import java.util.Date; 5 import java.util.Timer; 6 import java.util.TimerTask; 7 8 public class Test { 9 public static void main(String[] args) { 10 //timer1(); 11 timer2(); 12 //timer3(); 13 //time

【转】Java中字符串中子串的查找共有四种方法(indexof())

原文网址:http://wfly2004.blog.163.com/blog/static/1176427201032692927349/ Java中字符串中子串的查找共有四种方法,如下:1.int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引. 3.int lastIndexOf(String st