• 20165220 Java第三周学习总结


    1.教材学习内容总结

    类与对象

    • 类与对象的关系:要产生对象必须先定义类,类是对象的设计图,对象是类的实例
    • 为个别对象的数据成员指定值的方式是:对象.对象成员
    • 注意“一类一文件”
    • 类在定义时要使用关键词class,而具体对象就是对应java在堆内存中用new建立的实体

    标准类

    • java.util.Scanner类:接收用户的输入,比System.in.read()方法更方便,如果想取得用户输入的整行文字,则使用nextLine()。
    • java.math.BigDecimal类:Java遵守IEEE754浮点数运算规范,使用分数与指数来表示浮点数,这样就导致无法精确的进行运算,从而造成运算上的误差,比如1.0-0.8的结果就不是0.2。

      0.5会使用1/2来表示,0.75会使用1/2+1/4来表示,而0.1会使用1/16+1/32+1/256+1/512+1/4096+。。。无限循环下去,无法精确表示。

      所以java.math.BigDecimal类就可以解决这类问题。

    • 在基本类型中,=是将值复制给变量,而==是比较两个变量储存的值是否相同。但是,如果是在操作对象时,=是用在指定参考名称参考某个对象,而==是用在比较两个参考名称是否参考同一对象,换句话说也就是=是用在将某个名牌绑到某个对象,而==是用在比较两个名牌是否绑到同一对象。
    • equals是逻辑上相等,比较两个BigDecimal实质上是否相同,需要注意的是与==的区别。

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

    Q:看到组合还是有很多不理解的地方

    A:多看书多联系

    Q:this关键字是如何使用的?

    A:this是用来表示某个对象的。当它出现在类的构造方法中时,它代表着该构造方法所创建的对象;当它出现在实例方法中时,表示正在调用该方法的当前对象,this.方法;

    3.代码调试中的问题和解决过程

    Q:执行命令javac -d bin src/week3/Example4_5.java时出现找不到符号的提示 试了好多次也不行。

    A:我首先分析了原因,这应该是需要多个文件共同编译导致的。随后我查阅资料并询问同学,找到了一种办法,就是将相关的文件加以相同的前缀,然后统一编译、运行。就比如E9_1 E9_2 E9_3,然后用命令javac E9*.java来进行编译运行。虽然使得类名没意义,但是能解决问题。可以在此基础上再寻求更好的解决方案。

    4.代码托管

    5.错题总结

    因为题目还没有开始做,稍后做完了再来总结下

    6.感悟

    这周的内容比前两周明显多了不少,而且是过去没有接触过的新知识和新概念,理解起来需要一定的时间,编写代码也要一步一步地努力提高。我对这些新知识现在还掌握得不够熟练,希望多花时间敲代码后能够熟练应用。

  • 相关阅读:
    326周日去找书
    新视野大学英语-Book1
    预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
    自定义GRUB主题
    Linux安装CMake
    Linux编译安装Apache
    @Scheduled注解
    熵权可拓物元模型
    Linux更新Python3.8
    Linux下更新GCC
  • 原文地址:https://www.cnblogs.com/brs6666/p/8593843.html
Copyright © 2020-2023  润新知