重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你把JAVA生成的两个.clsss文件找到,例如:A.class和B.class再建一个文本文件,把建的文本文件C.TXT把扩展名改为.mf,再用记事本打开这个文件,在里面写上这样的语句:
成都创新互联主要从事成都做网站、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务莒南,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
Manifest-Version: 1.0
Main-class; A
Created-By: 1.5
然后在"开始"中打开"运行"打开输入"cmd"然后用CD把目录转化成那两个文件的目录,然后输入"jar cfm [要生成的文件名] C.mf A.class B.class"
这样就会生成一个文件,这个文件就是打包的文件,你可以双击运行.
第一:具体的功能方法如果是public直接就可以用import引入该类然后调用
第二:如果这功能是类似于.exe可执行文件或者打包成了.jar的可执行文件,那么Java中有固定的代码可以内嵌运行已经实现功能的程序
第三:如果你说的其他程序,是指用别的语言写的,那么可以用相关工具将该Java程序打包成.jar,然后安装了Java运行环境后就可以当成.exe文件运用。
第四:如果仅仅只是想把已经写好的Java程序,该程序已经实现了具体功能,然后你想用其他语言来调用该功能,这就需要网上再找下有这种工具没了?Java中的JNI和JNA相关技术可以研究下,我只知道人工编写新代码。
给你看一下你的Integer.valueOf(str)在API是的定义先:
public static Integer valueOf(String s) throws NumberFormatException
你会发现这个方法后面会有一个throws NumberFormatException这句话。如果你学过异常,你应该明白是怎么回事了。
NumberFormatException继承于IllegalArgumentExceptiond,而IllegalArgumentException继承于RuntimeException.
RuntimeException是一个可编绎通过的异常,你可以用try catch来捕获,当然你也可以不捕获。
区别在于:
1。如果你的str确实是一个只包含数字的字符串,意味着这条语句并没有抛出异
常,那么你的两段代码的结果是一样的。
2。如果你的str里包含了非数字的字符,比如你的str是"123hdsdf",那么Integer.valueOf(str))这个语句会抛出异常。第一段代码里的catch块里的内容会运行到。而第二段代码的System.out.println(Integer.valueOf(str))就会抛出异常,如果以下还有代码终无法运行到。
注:代码在运行到异常时,又没有用catch捕获,那么程序就会运行终止。
封装在java中有两种表现
1.用类封装一个事物的属性和方法。
2.用方法来封装一个固定的算法。
楼上所说的其实是封装的程度不一样,在面向对象的术语中粒度来表示这个程度。
封装其实是要看情况而定的,如果你这个类是描述人的,需要这个人完成一些基本的动作,如吃饭,走路,那么就不用把细胞也封装进来。但是如果“人”这个类,需要做医学的研究用,那么就需要封装细胞这个属性了。
代码打多了就自然能理解了,不是一个复杂的概念。呵呵。