java程序设计

201521123065 《Java程序设计》第5周学习总结

☆樱花仙子☆ 提交于 2019-12-23 22:11:53
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点。 1.2 可选:使用常规方法总结其他上课内容。 1、ArrayList只能存放对象; 2、对象包装类之间使用equals进行比较; 3、接口可以实现非继承关系的类之间的共同属性功能,可以理解为这些类has a共同的行为; 4、实现了compareble接口的对数组中的元素可以用Arrays.sort进行排序; 5、同继承,可以使用instanceof检查对象是否实现接口; 6、接口中的常量用final修饰,并且可以实现多个接口。 2. 书面作业 代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误。并分析输出结果。 错误的运行结果: 正确的运行结果: 不能编译通过; 运行结果如上; 根据提示可知:将Parents类中的变量i变为protected修饰即可。 输出结果如上; 结果分析:1 是 c.getParenti() 函数的打印结果; 2 2 1 1 是 c.getParentj() 函数的打印结果; 2 1 是 Other.showParentj(p) 函数的打印结果; 并且由于i、j是Parent类的protected变量,Child继承Parent类,允许访问。 1.2 另外一个包中的OutOfParentPackage

201521123069 《Java程序设计》 第5周学习总结

岁酱吖の 提交于 2019-12-23 18:55:24
1. 本章学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点。 1.2 可选:使用常规方法总结其他上课内容。 参考资料: 百度脑图 XMind 1.1 1.2 (1)用Arrays.sort方法对所有实现Comparable接口的对象进行排序 (2)接口体现了has-a关系,继承体现了is-a关系,设计时,选择继承或接口可以根据这种方法来判定。 (3)接口与抽象类的相同之处:都代表系统的抽象层,都不能被实例化,都能包含抽象方法 (4)接口与抽象类的不同之处:抽象类中可为部分方法提供默认的实现,接口中只能有方法声明,无方法实现,抽象类可以实现多个接口,只能继承一个类,一个接口可以继承多个接口 2. 书面作业 Q1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误。并分析输出结果。 1.2 另外一个包中的OutOfParentPackage.java,能否编译通过?提示什么错误?分析原因。 1.3 回答:如果为了访问到 protected 修饰的属性或方法应该怎么办? 1.1 答:不能通过编译。"System.out.println(i)";这一句会出错,private修饰符修饰i,只允许同一类中访问。将"private int i=1;"改为"protected int i=1;"

201521123088《Java程序设计》第12周学习总结

删除回忆录丶 提交于 2019-12-22 05:09:33
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容。 2. 书面作业 将Student对象(属性:int id, String name,int age,double grade)写入文件student.data、从文件读出显示。 1. 字符流与文本文件:使用 PrintWriter(写),BufferedReader(读) 1.1 生成的三个学生对象,使用PrintWriter的println方法写入student.txt,每行一个学生,学生的每个属性之间用|作为分隔。使用Scanner或者BufferedReader将student.txt的数据读出。(截图关键代码,出现学号) //201521123088 Student类: public void writeData(PrintWriter out) { out.println(id + "|" + name + "|" + age + "|" + grade ); } public void readData(Scanner in) { String line = in.nextLine(); String[] tokens = line.split("\\|"); id =Integer.parseInt(tokens[0]); name =tokens[1]; age =

201521123007《Java程序设计》第10周学习总结

白昼怎懂夜的黑 提交于 2019-12-20 23:37:18
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容。 补充上周 异常 异常堆栈追踪:获得异常发生的根源 创建自己的异常 自定义异常类不是由Java系统监测到的异常,而是用户自己编写的异常 自定义异常也要用try-catch-finally处理,且必须由用户自己抛出(throw) 可以让自定义异常继承自Throwable、Exception或其子类 自定义异常需要告诉用户系统发生了什么错误 确定是否想让别人捕获处理 尽量使用JDK已有的异常类 不要滥用异常:异常会降低程序性能,不要用异常代替正常的程序流程 2. 书面作业 本次PTA作业题集异常、多线程 1. finally 题目4-2 1.1 截图你的提交结果(出现学号) 1.2 4-2中finally中捕获异常需要注意什么? 因为finally中的代码必定会执行,而 resource.close(); 这条语句可能会出错,所以必须用 try-catch 捕获处理,代码如下: try { ... } catch (Exception e) { ... } finally { try { resource.close(); System.out.println("resource release success"); } catch (Exception e1) { System.out

201621123006 《Java程序设计》第13周学习总结

允我心安 提交于 2019-12-19 10:02:32
1. 本周学习总结 以你喜欢的方式(思维导图、OneNote或其他)归纳总结多网络相关内容。 2. 为你的系统增加网络功能(购物车、图书馆管理、斗地主等)-分组完成 为了让你的系统可以被多个用户通过网络同时使用,需要为你的系统增加网络功能。 2.1 简述你想为你的系统增加什么网络功能?设计思路是什么? 2.2 系统通过网络传递了什么信息?信息的格式是什么? 2.3 你的网络模块使用了TCP还是UDP技术?模块中的常用类是什么? 2.4 截图网络通讯部分的源代码与运行截图,并进行简单说明。 注意:如果不会编写客户端,可以使用telnet或者 网络调试助手*做客户端。** 3. 码云与PTA 3.1 统计本周完成的代码量 **选做:4. 网络学习指导(以下作业内容均为选做) 网络基础** 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 由上图可以看出, www.baidu.com 和 cec.jmu.edu.cn 的IP地址不同,因为服务器所属的地区不同。另一方面, www.baidu.com 的往返时间明显比 cec.jmu.edu.cn 长。,这是集美大学的服务器距离我们较近而百度的服务器距离我们较远。 1.2 telnet bbs.newsmth.net

201621123012 《Java程序设计》第14次学习总结

♀尐吖头ヾ 提交于 2019-12-19 02:22:22
作业14-数据库 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容。 2. 使用数据库技术改造你的系统 2.1 简述如何使用数据库技术改造你的系统。要建立什么表?截图你的表设计。 答:我建立了一个图书馆数据库,为这个库分别创建了3个表。图书信息表,用户表,用户借书还书信息表。 。 2.2 系统中使用到了JDBC中什么关键类? java.sql.Connection java.sql.DriverManager java.sql.ResultSet java.sql.Statement java.sql.SQLException 2.3 截图数据库相关模块的关键代码。关键行需要加注释。 答:利用语句对数据库做修改,然后重构链表来实施功能实现。 2.4 选做:使用JDBCUtil进行改造系统。 答: 3. 代码量统计 3.1 统计本周完成的代码量 周次 总代码量 新增代码量 总文件数 新增文件数 1 113 113 13 13 2 365 252 23 10 3 666 301 28 5 4 883 217 36 8 5 1095 212 40 4 6 1750 655 51 11 7 3412 1662 60 9 8 3653 241 65 5 9 4062 409 70 5 10 4351 289 79 9 11 4747 396 88 9 12

201521123085 《Java程序设计》第7周学习总结

女生的网名这么多〃 提交于 2019-12-18 03:26:55
1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容。 参考资料: 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 代码: Contains方法里面又调用了indexof方法,如果indexof方法返回值小于0,则表示O不存在对象数组里面,而indexof方法是将O对象与对象数组里面的元素一个一个进行比较的,如果有查到一样的,就返回该元素的位置,没有则返回-1 1.2 解释E remove(int index)源代码 首先根据指定的位置找到要删除的元素,然后将该元素移除,向左移动所有后续元素,再将长度减1。 1.3 结合1.1与1.2,回答ArrayList存储数据时需要考虑元素的类型吗? 不用考虑,ArrayList存储的数据都要是引用类型,而且ArrayList存储数据实际上是用Object的数组。 1.4 分析add源代码,回答当内部数组容量不够时,怎么办? add方法是先判断需要加入新元素的位置是否超过数组容量,如果超过,则先扩大数组容量,使其长度加1。 1.5 分析private void rangeCheck(int index)源代码,为什么该方法应该声明为private而不声明为public? private修饰可以不被外界任意修改,并且具有隐私性,不被随意调用

优秀的教学方法---做教练与做中学

試著忘記壹切 提交于 2019-12-18 02:45:30
优秀的教学方法---做教练与做中学 做教练(Being a Coach) 理论来自邹欣老师《 现代软件工程讲义 》的「 课程概述 」,课程配套图书《 构建之法 ( 电子版 )》中也有相关论述。 要体会教练技术,你可以先看看这部展示教练技术的电影《 卡特教练 》( 去这看 )。 电影里 卡特教练除了球技,还教会了球员怎么做人,让他们远离毒品和暴力。看了之后可以深刻体会「 教练 」如何影响学员的思维,促进学员成为深度学习者。 我认为老师做教练,结合MOOC、翻转课堂,可以从「填鸭式」上课中解放从来。老师可以从花大量时间备课、知识点重复讲解中解放出来,把时间花在了解学生、指导学生、检查学习状况、答疑上,从而体现“学生为主体、老师为主导”,从而做到循序渐进,从而做到因材施教。对学生而言,通过 做中学 来建构自己的知识。 做中学(Learning By Doing) 有「做中学(Learning By Doing)」的概念,最早可能是知道了Pragmatic的Dave Thomas提出的 CodeKata(代码套路) 。 套路(Kata)指针对某一种特定技术或技能进行重复性的练习,从而将其熟练掌握。这个概念借鉴于武术,指的是可以独自或多人共同练习的一系列动作、招式。 体育运动的初学者练习时候都需要重复动作,比如「 学习打乒乓球时 」要练习挥拍,挥拍成千上万遍之后动作就会定型,也就是教练常说的

201621123008 《Java程序设计》第13周学习总结

喜你入骨 提交于 2019-11-27 12:04:56
1. 本周学习总结 以你喜欢的方式(思维导图、OneNote或其他)归纳总结多网络相关内容。 2. 为你的系统增加网络功能(购物车、图书馆管理、斗地主等)-分组完成 为了让你的系统可以被多个用户通过网络同时使用,需要为你的系统增加网络功能。 2.1 简述你想为你的系统增加什么网络功能?设计思路是什么? 初步想法是能够让该图书管理系统同时为多个客户端提供通讯。 服务器端:通过学习的多线程知识,利用 while 循环每当服务器器端收到一个连接时,启动一个专门的线程处理和该客户端的通讯。 客户端:利用 while 循环实现客服端发送对服务器端的反馈。 缺点: 代码很简陋,适用性很差。 2.2 系统通过网络传递了什么信息?信息的格式是什么? 分析: 服务器端和客户端的数据是基于IO流进行传输的,客户端和服务器端从连接中获取 OutputStream , InputStream ,再通过打包器 PrintWriter , Scanner 将数据进行加工处理后再交与 OutputStream , InputStream 进行真正的传输。 2.3 你的网络模块使用了TCP还是UDP技术?模块中的常用类是什么? 分析: 使用 TCP 技术,提供了更可靠的连接,模块中常用的类就是 Scanner 以及 PrintWriter 了,主要进行对数据的加工处理,再利用 OutputStream ,

201521123003《Java程序设计》第13周学习总结

僤鯓⒐⒋嵵緔 提交于 2019-11-27 12:04:39
1. 本周学习总结 以你喜欢的方式(思维导图、OneNote或其他)归纳总结多网络相关内容。 2. 书面作业 1. 网络基础 1.1 比较 ping www.baidu.com 与 ping cec.jmu.edu.cn ,分析返回结果有何不同?为什么会有这样的不同? 前者传输包往返行程时间比后者慢,查询IP地址如下表可知, cec.jmu.edu.cn 的服务器离我们更近,所以所用时间比较短。 IP 归属地 14.215.177.38 中国 广东省 广州市电信 210.34.128.152 中国 福建省 厦门市 集美区教育网 1.2 telnet bbs.newsmth.net ,上面这条命令连接的是远程主机的什么端口号? telnet bbs.newsmth.net 这条命令连接的是远程主机的端口号是23。 1.3 telnet cec.jmu.edu.cn 80 ,尝试回答:你从屏幕看到一些什么内容?返回的内容是不是cec.jmu.edu.cn的主页内容?尝试使用 GET /index HTTP/1.0 命令,会返回什么?详见实验任务书题目1。 屏幕没有显示任何内容,返回的内容不是cec.jmu.edu.cn的主页内容。如下: 使用 GET /index HTTP/1.0 命令,返回的是cec.jmu.edu.cn主页的源代码。如下: 1.4