java语言通过什么实现了指针功能,java怎么实现指针
首先来看一下什么是C语言中的指针,字面上理解就是一个类似实现定位功能的结构。指针最重要的功能,就是实现回调函数,所谓回调函数,就是指让函数先在某处注册,而它将在稍后某个需要的时候被调用。回调函数一般用于截获消息,获取系统信息或处理异步事件。
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
如何实现类似于C语言中函数指针的功能
在爪哇语言中没有指针的概念,可以利用接口与类实现同样的效果,应先定义一个接口,然后在接口中声明要调用的方法,接着实现这个接口(不同的功能实现,例如一个升序排列,一个降序排序),最后把这个实现类的一个对象作为参数给调用程序,调动程序通过这个参数来调用指定的函数。
具体实现如下:
接口IntCompare
{
public int cmp(int a,int b);
}
类Cmp1实现IntCompare
{
公共int cmp(int a,int b)
{
如果(ab)
返回1;
else if(ab)
return-1;
其他
返回0;
}
}
类Cmp2实现IntCompare
{
公共int cmp(int a,int b)
{
如果(ab)
return-1;
else if(ab)
返回1;
其他
返回0;
}
}
编译类
{
公共静态void main(String[] args)
{
int[] array1={7,3,19,40,4,7,1 };
insertSort(array1,new cm P1());
System.out.println(升序排列);
for(int I=0;IAR射线1。长度;我)
{
系统。出去。print(array 1[I] );
}
系统。出去。println();
int[] array2={7,3,19,40,4,7,1 };
insertSort(array2,new CMP 2());
System.out.println(降序排列);
for(int I=0;IAR射线2。长度;我)
{
系统。出去。print(array 2[I] );
}
}
公共静态void insertSort(int[] a,IntCompare cmp)
{
如果(答!=空)
{
for(int I=1;内务部。长度;我)
{
int temp=a[i],j=I;
if(cmp.cmp(a[j-1],temp)==1)
{
while(j=1cmp.cmp(a[j-1],temp)==1)
{
a[j]=a[j-1];
j-;
}
}
a[j]=temp;
}
for(int I=1;内务部。长度;我)
{
int temp=a[I];
int j=I-1;
while(j=0cmp.cmp(a[j],temp)==1)
{
a[j 1]=a[j];
j-;
}
a[j 1]=temp;
}
}
}
}以上就是爪哇岛中靠什么实现指针的功能的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。