看板java
标 题Re: 请问import有无影响效能
发信站政大资科猫空行馆 (Thu Jul 1 05:14:01 2004)
转信站ptt!ctu-reader!ctu-peer!news.nctu!news.cis.nctu!smallcatBBS
※ 引述《[email protected] (关门! 放狗!)》之铭言:
: ※ 引述《[email protected] (月薪=1张股票)》之铭言:
: > Runtime 在用到那个class时 才会做load动作..
: > 不然import java.xxxx.*<=不就惨了?
: >
: 跟C的include好像不大一样? 在compile c档前便都已经抓进来 一起compile.
: 所以这些packet或是class如果要类比的话,是不是比较像是C去call的dll档?
: (lib档则是在执行前便
: 都load进来了)
: 但C即使call dll里头的
: API,是否也如同楼上说的
: 只抓该API?还是整个dll
: 都runtime loading阿?
1.import 是 compiler time binding, 跟run time 无关
2.java对程式码本身有另外一个heap 和 gc, 太久没有被呼叫的部份会从memory中delete
(所以写static的东西绝对要小心, 如
class xxx {
static int y = pack();
static int x = 10;
static int pack() {return x;}
static void main(String[] args){System.out.println(y);}
}
这样写已经错得很惨 )
3.call dll应该是dynamic linked, C有能力call 但没能力从memory中delete
只能靠OS的管理了
--
※ Origin: 猫空行馆 ◆ From: DOTA.dorm9.nccu.edu.tw