永发信息网

是否有进一步优化Java调用的方法

答案:2  悬赏:20  手机版
解决时间 2021-02-13 21:09
是否有进一步优化Java调用的方法
最佳答案
1.不要重复初始化变量。
默认情况下,调用类的构造函数时,java会把变量初始化成确定的值,所有的对象被设置成null,整数变量设置成0,float和double变量设置成0.0,逻辑值设置成false。当一个类从另一个类派生时,这一点尤其应该注意,因为用new关键字创建一个对象时,构造函数链中的所有构造函数都会被自动调用。
这里有个注意,给成员变量设置初始值但需要调用其他方法的时候,最好放在一个方法比如initXXX()中,因为直接调用某方法赋值可能会因为类尚未初始化而抛空指针异常,public int state = this.getState();
2.尽量重用对象。
特别是String对象的使用中,出现字符串连接情况时应使用StringBuffer代替,由于系统不仅要花时间生成对象,以后可能还需要花时间对这些对象进行垃圾回收和处理。因此生成过多的对象将会给程序的性能带来很大的影响。
3.尽量使用局部变量。
调用方法时传递的参数以及在调用中创建的临时变量都保存在栈(Stack)中,速度较快。其他变量,如静态变量,实例变量等,都在堆(Heap)中创建,速度较慢。
4.尽量使用final修饰符。
带有final修饰符的类是不可派生的。在JAVA核心API中,有许多应用final的例子,例如java.lang.String。为String类指定final防止了使用者覆盖length()方法。另外,如果一个类是final的,则该类所有方法都是final的。java编译器会寻找机会内联(inline)所有的final方法(这和具体的编译器实现有关)。此举能够使性能平均提高50%。 5.在java+Oracle的应用系统开发中,java中内嵌的SQL语言应尽量使用大写形式,以减少Oracle解析器的解析负担。
6.java编程过程中,进行数据库连接,I/O流操作,在使用完毕后,及时关闭以释放资源。因为对这些大对象的操作会造成系统大的开销。
7.过分的创建对象会消耗系统的大量内存,严重时,会导致内存泄漏,因此,保证过期的对象的及时回收具有重要意义。
JVM的GC并非十分智能,因此建议在对象使用完毕后,手动设置成null。
8.在使用同步机制时,应尽量使用方法同步代替代码块同步。
9.尽量减少对变量的重复计算。
比如
for(int i=0;i
应修改为
for(int i=0,len=list.size();i
10.采用在需要的时候才开始创建的策略。
例如:
String str="abc";if(i==1){ list.add(str);}12

应修改为:
if(i==1){String str="abc"; list.add(str);}
全部回答

抽象类,比较现实事物中就是抽象的,不实际存在的事物。“抽去像的部分”..用于做一个父类。给子类来继承,重写父类中的方法。而如果要继承多个父类 就 要用到 接口了。

比如 一个  教室中,有 学生,老师,网管。

可以把 人  定义成一个抽象类。 因为 人有的属性,上面三个都有。然后分别继承 抽象类。来 实现各种不同的实际 情况

接口 就是:要继承多个 父类,因为 java中 只是单继承。用接口来实现多继承...重写方法。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求解释,取名!!我儿子属龙二月十七出生!姓
徽商之家(无锡惠山区)地址在什么地方,我要处
厦门到婺源自駑多少公裏
不能自已的拼音
友佳旅馆(无锡惠山区)地址好找么,我有些事要
根据现行法规,为了进一步完善公共租赁住房的
开源公寓(无锡惠山区)地址好找么,我有些事要
多彩线上注册可以挣钱吗?
分手后,她说这辈子不找了,谁都不接受,可信
浪漫旅馆(无锡惠山区)地址在哪,我要去那里办
凯立德导航careiand怎么免费升级
剖腹产后二十天,伤口左上方张了一团硬块,用手
湖滨西路社区居委会地址好找么,我有些事要过
兴业银行跨行取钱没有手续费?
风暴英雄好玩吗
推荐资讯
如何在增强体格
哪有买钩针的?
申通快递丰良营业部我想知道这个在什么地方
激光雕刻机雕刻影像哪个牌子好
连上wifi同时开启蜂窝数据,会消耗数据流量吗
消防液动泡灌上的伐门是手动还是电动
云城区教师进修学校附属幼儿园地址在什么地方
佛教禅宗有手印吗?
磁力链是什么??怎么打开磁力链??
下列不属于劳务纠纷的性质的是()。
有什么好玩的、用RPG制作大师2000做的游戏?
某筷子生产企业为增值税一般纳税人。2012年2
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?