goback
月期刊咨询网
当前位置:首页>>计算机应用论文>>正文

Java基础FAQ


所属栏目:计算机应用论文
发布时间:2011-02-22 16:13:46  更新时间:2011-02-22 16:13:46

已签订领域:化学工程/制药,医学题目:**作为抗癌剂***催化剂**取代苯丙***SCI四区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:用**电***生物传感器**癌症**SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:**氧化石墨烯纳米***材料的生物传感器***结肠癌生物**癌胚****SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:聚合物纳米***a-硫辛酸***在神经炎症***应用***临床分析SCI二区 直击了解更多选题

已签订领域:计算机视觉/遥感/智能驾驶/汽车题目:**深度学习***高分辨率遥感***车辆检***SCI三区 直击了解更多选题

已签订领域:企业管理题目:社会交流***领导***倾向***方向SSCI,SCI三区,二区 直击了解更多选题

已签订领域:企业管理题目:**中小企业社交媒体****可持续绩效***因素探析SSCI,SCI三区,二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:利用硫氨酸***石墨烯纳米***电化学***传感器实现癌胚抗原***SCI二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:基于抗***纳米复合***高性能***早起癌症诊断***SCI二区 直击了解更多选题

已签订领域:经济,能源题目:***政治冲突****绿色金融、金融**、气***化***SCI四区 直击了解更多选题

已签订领域:经济,能源题目:冲***中能源不安全对***和环境***SCI四区 直击了解更多选题

已签订领域:教育题目:大学生***社交媒体***成绩影响***SSCI三区 直击了解更多选题

已签订领域:教育题目:巴基斯坦***学习实施的***的**SSCI二区 直击了解更多选题

已签订领域:教育题目:大学生对****下网络教学**思***SSCI二区 直击了解更多选题

已签订领域:教育题目:**教师和学生对影响***医疗**效果的****看法SSCI三区 直击了解更多选题

已签订领域:计量经济学题目:**货币、黄金、**和美国***的波动***相互依赖性:**数据的分析SSCI一区 直击了解更多选题

已签订领域:计量经济学题目:东南亚***内**趋同***中等收入**:新**的***SSCI二区 直击了解更多选题

已签订领域:建筑,历史题目:历史景点在***旅游发***中的***影响**(**研究:**历史***)SSCI,SCI一区 直击了解更多选题

已签订领域:领导力,管理题目:量化**领导对角色绩效***响:**冲突与工作自主性***作用SCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:数字***环境对学生学习成绩***:游戏**和***现实在教育***作用SSCI四区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***续决策之间的***:创新***识的**作用SSCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:课程**对大学生***发展的影响:学习习惯和***的***作用SSCI一区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***与可持续决策**:高等***学生认知***作用SSCI二区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语****学**与人工智能****学习SCI三区 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐**对学生成绩***的影响SCI三区 直击了解更多选题

已签订领域:人体工程,心理学题目:基于预先处理模型***模式人体工程学***女生肌肉骨骼***预防行为*** 直击了解更多选题

已签订领域:人体工程,心理学题目:制定一个***人体工程学**,以识别、优先考虑***职业压力源的*** 直击了解更多选题

已签订领域:人体工程,心理学题目:多重工作**压力和工作***:***工效学方法的混合方法*** 直击了解更多选题

已签订领域:数学,经济题目:数学模型***结构调整和经济转型****研究 直击了解更多选题

已签订领域:数学,经济题目:***时间**数学模型在***媒体营销**中的应用*** 直击了解更多选题

已签订领域:数学,经济题目:***时间**模型在***物流运**能力***研究 直击了解更多选题

已签订领域:数学,经济题目:碳****经济的数学模型****研究 直击了解更多选题

已签订领域:农村经济题目:农****社区**发展***分**SCI四区 直击了解更多选题

已签订领域:农村经济题目:创业***对乡村****发展的****SCI四区 直击了解更多选题

已签订领域:农村经济题目:农村创业****的空间*****究SCI四区 直击了解更多选题

已签订领域:医学,电化学题目:纳米颗粒*****及其在癌症****和重金属*****检测中的应用SCI三区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****前列腺癌药物氟****检测方法的*****腺癌治疗SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:气海***********金纳米颗粒的新型****************粘土及其对胃癌********************抗癌SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于抗***********GCE纳米***********材料的高性能*******************早期癌症SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:用******电化学生物传感器*****癌症***************SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****石墨烯纳米****材料的生物传感******用于测定结肠*****生物*****SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:聚合***纳米复合电极*****疏辛酸电化学检测*********SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:利用****酸/**糖**石墨烯纳米复合修饰的电化学*****SCI二区 直击了解更多选题

已签订领域:环境能源,绿色投资题目:环境能源、绿色投资、城市化和环境类方向SCI三区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语教学**人工智能***习SCI 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐形式*学生***影响SCI三区 直击了解更多选题

已签订领域:经济,绿色投资题目:***能源效率***化之间的***SCI三区 直击了解更多选题

已签订领域:经济政策题目:***阐明**印度经济***的关系SCI三区 直击了解更多选题

已签订领域:经济,金融题目:***国家的能源***重***SCI 直击了解更多选题

已签订领域:经济,金融投资题目:***融新之间***直接投资***SCI三区 直击了解更多选题

已签订领域:经济,数学,统计学,管理学题目:非***想重限制下***袭评价***SSCI四区 直击了解更多选题

已签订领域:经济,数字,管理学题目:基干***生产系统***SSCI四区 直击了解更多选题

已签订领域:农业,土壤科学题目:不同***有机覆盖***养分循环SSCI 直击了解更多选题

已签订领域:电力与能源系统,管理题目:pv***氢定价的***随***型稀SSCI,SCI二区 直击了解更多选题

已签订领域:建筑规划,计算机题目:使用***因子分析法***可持续***SCI三区 直击了解更多选题

已签订领域:工程技术,纺织工程,材料科学题目:甘***淀粉酶的提取***退浆中的应用SCI四区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:饲料***镉毒性的交互***生长***病理学***SCI二区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:****鱼水源***起的生******SCI三区 直击了解更多选题

已签订领域:金融,环境经济题目:*****预算在能效、绿色***的作用SCI 直击了解更多选题

已签订领域:应用数学/计算物理题目:***非线性库***自相位调制***SCI三区 直击了解更多选题

已签订领域:计算机,医学检测题目:***COVID-19***力***算法***决策SCI三区 直击了解更多选题

已签订领域:计算机,物联网,智慧城市题目:基于***物联网****算法SCI三区 直击了解更多选题

Java基础FAQ

Java基础 FAQ

三、I/O篇

18
我怎么给java程序加启动参数,就像dir /p/w那样?
 答:还记得public static void main(String[] args)吗?这里的args就是你的启动参数。
 在运行时你输入java package1.class1 -arg1 -arg2,args中就会有两个String,一个是arg1,另一个是arg2。

19 我怎么从键盘输入一个int/double/字符串?
 答:java的I/O操作比C++要复杂一点。如果要从键盘输入,样例代码如下:

 BufferedReader cin = new BufferedReader( new InputStreamReader( System.in ) )
 ;
 String s = cin.readLine();


 这样你就获得了一个字符串,如果你需要数字的话再加上:

 int n = Integer.parseInt( s );


 或者

 double d = Double.parseDouble( s );



20 我怎么输出一个int/double/字符串?
 答:在程序开始写:

 PrintWriter cout = new PrintWriter( System.out );


 需要时写:

 cout.print(n);


 或者

 cout.println("hello")


 等等。

21 我发现有些书上直接用System.in和System.out输入输出,比你要简单得多。
 答:java使用unicode,是双字节。而System.in和System.out是单字节的stream。如果你要输入输出双字节文字比如中文,请使用作者的做法。

四、 关键字篇

25
java里面怎么定义宏?
 答:java不支持宏,因为宏代换不能保证类型安全。如果你需要定义常量,可以将它定义为某个类的static final成员。参见26和30。

26 java里面没法用const。
 答:你可以用final关键字。例如 final int m = 9。被声明为final的变量不能被再次赋值。也可以用于声明方法或类,被声明为final的方法或类不能被继承。注意const是java的保留字以备扩充。

27 java里面也不能用goto。
 答:甚至在面向过程的语言中你也可以完全不用goto。请检查你的程序流程是否合理。如果你需要从多层循环中迅速跳出,java增强了(和C++相比)break和continue的功能。
 例如:

 outer :
 while( ... )
 {
 inner :
 for( ... )
 {
 ... break inner; ...
 ... continue outer; ...
 }
 }


 和const一样,goto也是java的保留字以备扩充。

28 java里面能不能重载操作符?
 答:不能。String的+号是唯一一个内置的重载操作符。你可以通过定义接口和方法来实现类似功能。

29 我new了一个对象,但是没法delete掉它。
 答:java有自动内存回收机制,即所谓Garbarge Collector。你再也不用担心指针错误。

30 我想知道为什么main方法必须被声明为public static?
 答:声明为public是为了这个方法可以被外部调用,详情见面向对象篇37。
 static是为了将某个成员变量/方法关联到类(class)而非实例(instance)。你不需要创建一个对象就可以直接使用这个类的static成员,在A类中调用B类的static成员可以使用B.staticMember的写法。注意一个类的static成员变量是唯一的,被所有该类对象所共享的。

31 throw和throws有什么不同?
 答:throws用于声明一个方法会抛出哪些异常。而throw是在方法体中实际执行抛出异常的动作。如果你在方法中throw一个异常,却没有在方法声明中声明之,编译器会报错。注意Error和RuntimeException的子类是例外,无需特别声明。

32 什么是异常?
 答:异常最早在Ada语言中引入,用于在程序中动态处理错误并恢复。你可以在方法中拦截底层异常并处理之,也可以抛给更高层的模块去处理。你也可以抛出自己的异常指示发生了某些不正常情况。常见的拦截处理代码如下:

 try
 {
 ...... //以下是可能发生异常的代码
 ...... //异常被抛出,执行流程中断并转向拦截代码。
 ......
 }

 catch(Exception1 e) //如果Exception1是Exception2的子类并要做特别处理,应排在前面
 {
 //发生Exception1时被该段拦截
 }
 catch(Exception2 e)
 {
 //发生Exception2时被该段拦截
 }
 finally //这是可选的
 {
 //无论异常是否发生,均执行此段代码
 }

33 final和finally有什么不同?
 答:final请见26。finally用于异常机制,参见32。


五、 面向对象篇

34 extends和implements有什么不同?
 答:extends用于(单)继承一个类(class),而implements用于实现一个接口(interface)。interface的引入是为了部分地提供多继承的功能。
在interface中只需声明方法头,而将方法体留给实现的class来做。这些实现的class的实例完全可以当作interface的实例来对待。有趣的是在interface之间也可以声明为extends(单继承)的关系。

35 java怎么实现多继承?
 答:java不支持显式的多继承。因为在显式多继承的语言例如c++中,会出现子类被迫声明祖先虚基类构造函数的问题,而这是违反面向对象的封装性原则的。java提供了interface和implements关键字来部分地实现多继承。参见34。

36 abstract是什么?
 答:被声明为abstract的方法无需给出方法体,留给子类来实现。而如果一个类中有abstract方法,那么这个类也必须声明为abstract。被声明为abstract的类无法实例化,尽管它可以定义构造方法供子类使用。

37 public,protected,private有什么不同?
 答:这些关键字用于声明类和成员的可见性。
 public成员可以被任何类访问,
 protected成员限于自己和子类访问,
 private成员限于自己访问。
 Java还提供了第四种的默认可见性,一般称为package private,当没有任何public,protected,private修饰符时,成员是同一包内可见。类可以用public或默认来修饰。

38 Override和Overload有什么不同?
 答:Override是指父类和子类之间方法的继承关系,这些方法有着相同的名称和参数类型。Overload是指同一个类中不同方法(可以在子类也可以在父类中定义)间的关系,这些方法有着相同的名称和不同的参数类型。

39 我继承了一个方法,但现在我想调用在父类中定义的方法。
 答:用super.xxx()可以在子类中调用父类方法。

40 我想在子类的构造方法中调用父类的构造方法,该怎么办?
 答:在子类构造方法的第一行调用super(...)即可。

41 我在同一个类中定义了好几个构造方法并且想在一个构造方法中调用另一个。
 答:在构造方法第一行调用this(...)。

42 我没有定义构造方法会怎么样?
 答:自动获得一个无参数的构造方法。

43 我调用无参数的构造方法失败了。
 答:如果你至少定义了一个构造方法,就不再有自动提供的无参数的构造方法了。你需要显式定义一个无参数的构造方法。

44 我该怎么定义类似于C++中的析构方法(destructor)?
 答:提供一个void finalize()方法。在Garbarge Collector回收该对象时会调用该方法。注意实际上你很难判断一个对象会在什么时候被回收。作者从未感到需要提供该方法。

45 我想将一个父类对象转换成一个子类对象该怎么做?
 答:强制类型转换。如

 public void meth(A a)
 {
 B b = (B)a;
 }


 如果a实际上并不是B的实例,会抛出ClassCastException。所以请确保a确实是B的实例。

46 其实我不确定a是不是B的实例,能不能分情况处理?
 答:可以使用instanceof操作符。例如

 if( a instanceof B )
 {
 B b = (B)a;
 }
 else
 {
 ...
 }

47 我在方法里修改了一个对象的值,但是退出方法后我发现这个对象的值没变!
 答:很可能你把传入参数重赋了一个新对象,例如下列代码就会造成这种错误:

 public void fun1(A a) //a是局部参数,指向了一个外在对象。
 {
 a = new A(); //a指向了一个新对象,和外在对象脱钩了。如果你要让a作为传出变量,不要写这一句。
 a.setAttr(attr);//修改了新对象的值,外在对象没有被修改。
 }


 基本类型也会出现这种情况。例如:

 public void fun2(int a)
 {
 a = 10;//只作用于本方法,外面的变量不会变化。
 }



六、java.util篇

48 java能动态分配数组吗?
 答:可以。例如int n = 3; Language[] myLanguages = new Language[n];

49 我怎么知道数组的长度?
 答:用length属性。如上例中的 myLanguages.length 就为 3。

50 我还想让数组的长度能自动改变,能够增加/删除元素。
 答:用顺序表--java.util.List接口。你可以选择用ArrayList或是LinkedList,前者是数组实现,后者是链表实现。例如:

 List list = new ArrayList();


 或是

 List list = new LinkedList();



51 什么是链表?为什么要有两种实现?
 答:请补习数据结构。

52 我想用队列/栈。
 答:用java.util.LinkedList。

53 我希望不要有重复的元素。
 答:用集合--java.util.Set接口。例如:Set set = new HashSet()。

54 我想遍历集合/Map。
 答:用java.util.Iterator。参见API。

55 我还要能够排序。
 答:用java.util.TreeSet。例如:Set set = new TreeSet()。放进去的元素会自动排序。你需要为元素实现Comparable接口,还可能需要提供equals()方法,compareTo()方法,hashCode()方法。

56 但是我想给数组排序。
 答:java.util.Arrays类包含了sort等实用方法。

57 我想按不同方法排序。
 答:为每种方法定义一个实现了接口Comparator的类并和Arrays综合运用。

58 Map有什么用?
 答:存储key-value的关键字-值对,你可以通过关键字来快速存取相应的值。

59 set方法没问题,但是get方法返回的是Object。
 答:强制类型转换成你需要的类型。参见45。

60 我要获得一个随机数。
 答:使用java.util.Random类。

61 我比较两个String总是false,但是它们明明都是"abc" !
 答:比较String一定要使用equals或equalsIgnoreCase方法,不要使用 == !
 ==比较的是两个引用(变量)是否指向了同一个对象,而不是比较其内容。

62 我想修改一个String但是在String类中没找到编辑方法。
 答:使用StringBuffer类。

 String str = "......."; //待处理的字符串
 StringBuffer buffer = new StringBuffer(str); //使用该字符串初始化一个
 StringBuf
 fer
 buffer.append("..."); //调用StringBuffer的相关API来编辑字符串
 String str2 = buffer.toString(); //获得编辑后的字符串


 另外,如果你需要将多个字符串连接起来,请尽量避免使用+号直接连接,而是使用StringBuffer.append()方法。

63 我想处理日期/时间。
 答:使用java.util.Date类。你可以使用java.text.SimpleDateFormat类来在String和Date间互相转换。

 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //规定日期格式
 Date date = formatter.parse("2003-07-26 18:30:35"); //将符合格式的String转换为Date
 String s = formatter.format(date); //将Date转换为符合格式的String





  • 985和211副教授评职称认可的刊物推荐

    2024-11-28
    985和211院校的副教授评职称,对于个人学术声誉和职业发展是非常重要的,一般副教授发表期刊论文认可的刊物具有较高的学术水平和影响力。以下是对 985和211副教授评职称认可的刊物推荐 ,供大家参考: 1、SCI期刊 SCI期刊,即科学引文索引期刊,是国际学术界公认的权威
  • Sustainability期刊版面费多少

    2024-11-28
    《Sustainability》是一本由MDPI出版社出版的国际性、跨学科的开放获取学术期刊,专注于环境、文化、经济和社会可持续性的研究。那么, Sustainability期刊版面费多少 ? 从1900瑞士法郎上涨至2400瑞士法郎(约19266元人民币),适用于同行评审后接受的论文,该费用于
  • EI期刊论文查重的要求是什么

    2024-11-28
    能够在EI期刊论文发表论文,除了要有高质量的研究成果外,还要通过严格的查重审核。那么, EI期刊论文查重的要求是什么 ?详情如下: EI期刊作为国际学术期刊,对论文的原创性要求较高。查重作为确保论文原创性的手段,可有效避免学术不端行为发生,维护学术界的公平和
  • 评职称,国内高校认可scopus期刊吗?scopus期刊列表

    2024-11-28
    评职称,国内高校认可scopus期刊吗 ? 不同国内高校对scopus期刊评职称认可度可能存在一定的差异性。一些高校和科研机构确实认可scopus收录的期刊,尤其是研究生、博士生和教师晋升职称等方面,但也有一些高校是不认可的,因此在选择发表scopus期刊之前,一定要了解清
  • 解答SCI论文被语言拒稿的技巧

    2024-11-28
    对于国内作者来说,其中一大原因是语言表达,如sci论文出现大量的语法错误、中式英语表达,造成编辑或审稿人对文章内容的理解偏差,导致sci论文被拒稿。以下是 解答SCI论文被语言拒绝的技巧 ,希望能够帮助到你快速发表sci论文。 1、对sci论文专业润色和翻译 为了确保S
  • 中科院院士:94%中国科研SCI论文发表国外期刊,仅5.88%在国内期刊发表

    2024-11-18
    在2024上海科技与期刊高质量发展大会上,中国科学院院士、上海市科协主席张杰指出:2023年,我国科研人员共发表SCI(科学引文索引)论文73.96万篇,其中只有4.35万篇发表在国内期刊,占比5.88%,其余94.12%的论文都发表在国外期刊上。。 开幕式上,上海市科技期刊学会
  • 励志!安徽“扭扭车少年”在《Applied Intelligence》期刊上发表论文

    2024-11-15
    2024年11月, 张亮在国际人工智能领域高水平期刊《Applied Intelligence》(应用智能)上发表题为《Robot Motion Planning Algorithm Based on Deep Learning Optimization》(基于深度学习优化机器人运动规划的算法研究)的论文。 11月19日,张亮创办的公司首款外骨骼
  • 恭喜!《中国财政》入选长安街读书会学习核心来源期刊

    2024-11-14
    《中国财政》确实被正式选为长安街读书会干部学习的核心来源期刊之一。在2024年10月8日发布的《长安街读书会干部学习核心期刊目录》中,《中国财政》被列为核心期刊之一,其关注点在于中华民族现代文明。因此,可以确认《中国财政》正式入选长安街读书会干部学习核心来
  • 恭喜!上海科技期刊三本齐发,影响因子登顶学科王座

    2024-11-13
    据SCI数据库,2023年世界科技论文总数达248万篇,其中收录中国科技论文74万篇,数量居全球之首,占比30%;排名第二的美国,收录论文53万篇,占比21%。 目前,上海共有科技期刊358本,其中英文期刊82本,占比约20%,是全国平均的两倍;SCI期刊54本,其中Q1区期刊35本。
  • 西安交大:主办期刊《药物分析学报(英文)》入选百强榜单,总排名第七

    2024-11-12
    《2024中国英文科技期刊海外媒体传播影响力报告》的发布,彰显了中国科技期刊在国际舞台上的影响力。西安交通大学主办的《药物分析学报(英文)》(Journal of Pharmaceutical Analysis, JPA)在该报告中取得了显著成就,不仅成功进入百强榜单,而且取得了总排名第七的
回到顶部