20165205 2017-2018-2 《Java程序设计》第七周学习总结

20165205 2017-2018-2 《Java程序设计》第七周学习总结

教材学习内容总结

  • 下载XAMPP并完成配置
  • 完成XAMPP与数据库的连接
  • 学会创建一个数据库
  • 学会用java语言查询数据库
  • 学会使用预处理语句

教材学习中的问题和解决过程

  • 问题1:在开启XAMPP-control时,无法通过打开http://localhost 或http://127.0.0.1 来进入XAMPP,打开以上网址时出现下图:

  • 问题1解决方法:将网址改成http://localhost/phpmyadmin就可以直接进入了。

  • 问题2:在确定与sql的链接时,发现汉字呈现乱码

  • 问题2解决方案:打开IDEA左上File->Settings->Editor->File Encodings更改右侧关于Project的编码,保持一致,点击ok。
    但是这个并没有解决我的问题,还是显示乱码,之后在代码上点击右键,选择File Encode也与刚才设置一致,但是这之后我的乱码还是没有消失,最后我重新安装了一次IDEA,问题解决。

  • 问题3:在运行Example11_1.java时出现Edit Configuration的对话框,并且直接点击运行无法运行。

  • 问题3解决方法:在VM option处选择文件夹就可以解决,这个问题可能是因为我重装了IDEA才出现的。

代码托管

错题总结

  • 第五周

1.下列关于内部类说法正确的是A,B,D

A.其他类不可以用某个类的内部类声明对象。

B.内部类字节码文件的名字格式是“外嵌类名$内部类名”。

C.内部类的类体可以声明类变量和类方法。

D.内部类在成员位置上,因此可以被private修饰

2.下面的类无法通过编译,第三行出现错误提示,因为类不可以被static修饰。(错误)

  class Outer{
  int x = 3;
  static class Inner{
   void function() {
    System.out.println(x);
   }
  }
  }

3.下列关于异常的说法,错误的是A,B

A.java使用throws抛出一个异常,使用throw声明方法可能抛出异常。

B.执行System.out.println(3/0);语句会报ArithmeticException异常。

C.Java中的错误是以对象的方式呈现为java.lang.Throwable的各种子类实例。

D.方法parseInt()在执行过程中可能抛出DataFormatException异常。

4.如果超出JVM运行能力之外,如“byte[] arr=new byte[10241024600];”会抛出java.lang.OutOfMemoryError异常。(错误)

5.下列关于异常处理的说法,正确的是A,C,D

A.一旦try部分抛出异常对象,那么try部分将立刻结束执行,转向执行相应的catch部分。

B.catch代码块定义一定会执行的代码,它通常用于关闭资源。

C.try-catch语句可以由几个catch组成,分别处理发生的异常。

D.catch括号中列出的异常不得有继承关系,否则会发生编译错误。

  • 第六周

1.现有以下代码,哪些选项插入到第5行可以通过编译?BDF

import java.util.*;

 Class FindStuff  {
public static void main (String[]args){
//insert code here
c.put ("X", 123);
}
  }

A.Map c= new SortedMap();

B.HashMap c= new HashMap();

C.HashMap c= new Hashtable();

D.SortedMap c= new TreeMap();

E.ArrayList c= new ArrayList();

F.Map c = new LinkedHashMap();

2.下列关于HashMap泛型类常用方法的介绍,正确的是AD

A.public boolean isEmpty()如果此映射不包含键-值映射关系,则返回 true。

B.public V get(Object key)返回指定键所映射的值;如果此映射不包含该键的映射关系,则抛出异常。

C.public V put(K key, V value) 在此映射中关联指定值与指定键。如果该映射以前包含了一个该键的映射关系,则以先定义的值为准。

D.public Object clone()返回此 HashMap 实例的浅表副本:并不复制键和值本身。

查询API。B项:如果此映射不包含该键的映射关系,则返回null。C项:如果该映射以前包含了一个该键的映射关系,则旧值被替换。

3.下列关于TreeSet泛型类常用方法的介绍,正确的是BCD

A . public boolean contains(Object o) 如果此 set 包含指定的元素,则返回 true。如果指定对象无法与该 set 中的当前元素进行比较,或不包含,则返回false。

B . public boolean add(E e)将指定的元素添加到此 set。如果此 set 已经包含这样的元素,则该调用不改变此 set 并返回 false。

C . public boolean addAll(Collection<? extends E> c)将指定 collection 中的所有元素添加到此 set 中。如果此 set 由于调用而发生更改,则返回 true。

D . public E lower(E e) 返回此 set 中严格小于给定元素的最大元素;如果不存在这样的元素,则返回 null。

A项:如果指定对象无法与该 set 中的当前元素进行比较,则抛出ClassCastException异常。

4.链表调用get(int index)方法的速度比顺序存储结构的集合调用get(int index)方法的速度快。(错误)

5.如果链表中存放的对象不是字符串数据,那么创建对象的类必须实现Comparable接口。(正确)

6.下列关于substring方法的说法,正确的是ACD

A . public String substring(int beginIndex)返回的子字符串从指定索引处的字符开始,直到此字符串末尾。

B . public String substring(int beginIndex, int endIndex) 子字符串从指定的 beginIndex 处开始,直到索引 endIndex处的字符。

C . "emptiness".substring(9)返回值为""。

D . "smiles".substring(1, 5)返回值为"mile"。

E . 若beginIndex 大于 endIndex,则substring(int beginIndex, int endIndex)返回-1。

查询API。B项:直到索引 endIndex - 1 处的字符。E项:抛出IndexOutOfBoundsException异常。

7.下列关于正则表达式的说法,正确的是ABDE
A . aw*匹配以字母a开头的单词
B . d+匹配1个或更多连续的数字。
C . w{6} 匹配6个及以上字符的单词。
D . [0-9]代表的含意与d就是完全一致的:一位数字
E . S+匹配不包含空白符的字符串。
F . (d{1,3}.){3}d{1,3}用来匹配 IP地址。

C项:w{6} 匹配刚好6个字符的单词。F项: IP地址中每个数字都不能大于255,该表达式忽略了这个约束条件。正确的是((2[0-4]d|25[0-5]|[01]?dd?).){3}(2[0-4]d|25[0-5]|[01]?dd?)。

8.下列关于Math类的说法,正确的是ABD

A . public static double cbrt(double a) 返回 double 值的立方根。如果参数为 NaN,那么结果为 NaN。

B . public static double cos(double a) 返回角的三角余弦。如果参数为 NaN 或无穷大,那么结果为 NaN。

C . public static double floor(double a) 返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。如果参数为 NaN 或无穷大,那么结果为 NaN。

D . public static double log10(double a) 返回 double 值的底数为 10 的对数。如果参数为正 0 或负 0,那么结果为负无穷大。

查询API。C项:如果参数为 NaN、无穷大、正 0 或负 0,那么结果与参数相同。

总结

本周学习了XAMPP的使用及数据库的创立,关键的地方在于如何建立联系,在之前学习课本是时候我还下载了mysql,但是在安装XAMPP时我就卸载了,免去了冲突的麻烦,在最后终于完成了从IDEA中查询数据库内信息的任务。

原文地址:https://www.cnblogs.com/mushroomissmart/p/8819608.html