本文作者:ptiyny

J***a改变语言 j***a设置语言

ptiyny 21分钟前 2
J***a改变语言 j***a设置语言摘要: 大家好,今天小编关注到一个比较有意思的话题,就是关于Java改变语言的问题,于是小编就整理了3个相关介绍Java改变语言的解答,让我们一起看看吧。java语言采用多种机制来保证可移...

大家好,今天小关注到一个比较有意思的话题,就是关于J***a改变语言的问题,于是小编就整了3个相关介绍J***a改变语的解答,让我们一起看看吧。

Java改变语言 java设置语言
(图片来源网络,侵删)

j***a语言***用多种制来保证可移植性,其中最主要的是?

对于程序可移植性最直接最有效的支持是与平台无关。对于J***A语言来时使用了多种机制来保证可移植性,最主要的是使用虚拟机(virtual machine)和使用虚拟机使用的J***A字节码。由于保证J***A语言的高可移植性,其程序的运行效率被降低,为了弥补这种缺陷,将J***A字节码的设计最大限度接近于机器码。

何用j***a语言使十进制数转换十六进制数?

我的思路很简单: public class 六转2 { public static void main(String[] args) { System.out.println(" ==========16转二进制========== "); init(); }//初始化! private static void init() { //字符串形式的:16进制! String s="ACCC"; //字符串形式十进制--作为桥梁! int sint=Integer.valueOf(s, 16); //十进制在转换成二进制的字符串形式输出! String bin=Integer.toBinaryString(sint); //输出! System.out.println(bin); } }

j***a为什么要设计interface,是为了尽可能替代类的继承吗?

接口定义的属于规范,比如说,打印这一个动作,不同的打印机有不同的打印方式和指令,如果没有规范,很难做到一种代码统一打印,如果有接口和规范就能做到兼容多家打印机。USB接口,220v电源接口,就是一种规范,有了这些规范,设备方,供电方就有了一套方法来约束自己,达到工程学上的通用,接口是工学上一个很好的思想

继承代价太大,强制你把父类的所有东西都拿过来,不然就不准使用,这种将方法和属性强耦合的方式容易导致类继承多了到后面积重难返。使用鸭子类型(接口)能避免一部分继承的缺陷,Go里甚至直接继承都没有了,只有接口。

Java改变语言 java设置语言
(图片来源网络,侵删)

以前我们把物体抽象,大象抽象是动物,动物抽象是生物,这样本身就把对象的内容和行为绑定了,比如大象会喷水,就给大象加个喷水的方法,但是如果鱼也会喷水,喷水这个方法又不能放到动物类里,那么基于大象和鱼的喷水方法实现的上层方法就无法复用,这两个喷水在编译器看来是没有任何关系的。

开始人们想到搞一个喷水动物类,继承动物类,大象和鱼再继承喷水动物类。但是这样终究治标不治本,再有其他的变化,继承链又要修改。

因为实际上我们使用对象,都是在使用其方法(属性其实也应该算方法)。

我对面向对象程序过程的理解,这个过程实际上就是让对象之间使用方法互发消息进行通信和动作,最终完成工作。

Java改变语言 java设置语言
(图片来源网络,侵删)

大家都知道的一句话,上层应该依赖抽象而不是依赖细节,然而依赖一个基类,本身已经依赖这个基类的实现细节,基类要求有个int成员,那么任何子类无论如何都需要有个int成员。那么理应将方法抽象出来,而不去关心其到底是什么,因为我们并不使用对象内部的内容,我们只使用方法。

比如有个iwriteable接口,表示对象可以按字节写入,那么上层的代码就不用管写的到底是什么了,只要能写就行,就可以基于这个iwriteable接口里的方法,写出例如写字符串,写图片等方法。任何实现了这个接口的类,都可以复用这些写字符串,写图片的代码。

那么就有人要问了,那如果我确实要求要有个int成员,因为我上层代码要使用呢?那么根据前面说的,属性也是方法,你应该再定义一个接口,比如这个int存的是年龄,那么就来个h***eage接口并实现它。调用的地方可以要求对象实现哪几个接口,这样也能获取需要的属性。

这么一来,连属性都没有了,那么继承也可以没有了,毕竟你要求的不是基类了,是一个或多个接口的组合了,所以你可以看到,接口替代继承是很自然的,而不是什么刻意而为的,是更高级抽象的体现。事实上基于自然规则的那套大象是动物,动物是生物的那套面向对象规则,在程序设计里并不好用。所以如果让我介绍面向对象,我不会讲这些例子。

到此,以上就是小编对于J***a改变语言的问题就介绍到这了,希望介绍关于J***a改变语言的3点解答对大家有用。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享