• 201521123070 《JAVA程序设计》第2周学习总结


    1. 本章学习总结

    1.学习了string类;
    2.了解了ArrayList的特性和使用方法;
    3.学习了类名包名。

    2. 书面作业

    Q1.使用Eclipse关联jdk源代码(截图),并查看String对象的源代码?简单分析String对象的设计思路。


    **Q2.为什么要尽量频繁的对字符串的修改操作应该是用StringBuilder而不是String? **

    用String类会降低效率,因为每次修改字符串都要新建字符串,再删除之前的字符串,
    而用StringBuilder则会快许多,因为他是在字符串末尾进行操作,所以当频繁的对字
    符串修改时用StringBuilder而不是用String。
    

    Q3.比较两个字符串的值是否相等?为什么不能用==直接进行比较?

    当对两个字符串进行比较时,应该用equals();,如果用==的话,表示的是两个字
    符串是否引用同一个地址,==只能比较两个变量的值。
    

    Q4.尝试使用字符串池的概念解释如下程序段输出结果,并回答这段代码创建了几个字符串对象:

     String str1 =“hi“, str2=“hi“;
     String str3 = new String(str1)
     System.out.println(str1==str2);
    
    输出结果为true,创建了两个字符串对象。
    在字符串池中找"hi",如果没有就建立字符串"hi"对象,str1与str2都指向其地址,这是一;
    二:str3在字符串池外面创建了新的字符串对象。
    

    **Q5.Integer i = 100;//100是基本类型,i是引用类型,为什么可以将100赋值给i **

    自动装箱、拆箱的内幕"Integer i = 100;"实际上会使用Integer.valueOf()来建立Integer实例。
    

    **Q6.尝试分析下面代码输出结果 **

     Integer i1 = 127;Integer i2 = 127;
     i1 == i2;//true of false?
     Integer i1 = 128;Integer i2 = 128;
     i1 == i2;//true of false
    
    输出结果为true和false;
    书P94有详细解释,IntegerCache范围是-128~127。
    

    **Q7.package与javac、 java、 -classpath、 -d
    在 com.ibm包中编写 StringUtil类,内有一方法 **

     public static void foo1(){
      System.out.println(StringUtil.class+" method:foo1");
     }
    

    在edu.jmu包中编写Main类,调用com.ibm.StringUtil的foo1方法
    7.1 尝试用命令行进行编译并运行,截图

    7.2 将生成的StringUtil.class放到d:lib正确的目录结构下,将Main.class在d: est正确的目录结构,尝试在命令行下运行,并截图。
    这个我暂时没弄出来,现在有紧急事件,在外面,等回来一定弄懂。
    7.3 Eclipse中源代码放在哪个目录、class文件放在哪个目录。在Eclipse项目中按一下ctrl+f11就可以直接运行Main,尝试分析背后实现的原理。

           源代码放在src里面,class放在bin文件夹中。
    

    **Q8.自己在这门课的目标与计划 **
    8.1请描述一下你的技术基础(会什么语言,都写了多少行代码)

          C语言,C++之前都有学,不过我学习不好,不是很会;
          Java现在刚接触,感觉要学习的东西还有很多;
          代码其实写的不多,不过有过课设,加起来应该有几千行吧。
    

    8.2一周准备花多少时间在这门课上?一周准备写多少行代码?采用怎样的学习方式?遇到困难打算怎样解决?

          一周三天吧,大概八百行代码;
          上课听讲,完成老师作业,百度,问柯柯和嘉廉。
    

    8.3关于这门课的smart目标

          SMART:
          Specific:具体的,无二义性的,能描述 “成功” 是什么样的。
          Motivating: 目标能激发对目标的兴趣么?实现目标对学生来说说意味着什么?他们会为之自豪么?
          Achievable: 能做到么?是挟泰山以超北海?还是把墙角一堆砖头搬走?
          Relevant:  和学生来到大学的大方向、目标吻合
          Trackable: 能衡量进度的,和有些资料提到的 Measurable 相似。
          其实我没有什么目标,虽然这样很不好,可是这是大实话。我就希望现在的自己能够多花点时间在学习上。
    

    3. PTA实验总结及码云上代码提交记录

    3.1本周Commit历史截图

    3.2 实验总结

  • 相关阅读:
    深入正则表达式(0):正则表达式概述
    讲透学烂二叉树(二):图中树的定义&各类型树的特征分析
    讲透学烂二叉树(一):图的概念和定义—各种属性特征浅析
    Gzip之后继者Brotli浅析之CDN厂商的智能压缩,服务器Brotli设置
    ECMAScript进化史(1):​话说Web脚本语言王者JavaScript的加冕历史
    nginx网站限速限流配置——网站被频繁攻击,nginx上的设置limit_req和limit_conn
    linux添加用户,修改用户密码,修改用户权限,设置root用户操作
    nginx 限制ip访问,禁止非法域名指向本机ip——防止被别人绑定域名到自己IP的方法
    centos8 新增ssh自定义端口与屏蔽默认22端口。
    1g云主机升级centos8不满足centos 8 至少2g内存要求,linux虚拟内存来凑
  • 原文地址:https://www.cnblogs.com/TSlover/p/6498698.html
Copyright © 2020-2023  润新知