20172306《Java程序设计与数据结构》第一周总结

20172306《Java程序设计》第一周学习总结

教材学习内容总结

本周主要学习《Android和Java》书中的第二十三章和第二十六章。

  • 第二十三章:Android简介
  • Android使用Java作为编辑语言。
  • Android是向后兼容的,针对较早的版本编写的应用程序,总是能够在新的版本上运行。
  • 每个活动都必须有一个清单,描述该应用程序。
  • 第二十四章:初识Android
  • studio的应用程序的结构:project有两个节点:app和Gradle Scripts;app包含应用程序的所有组件,其中包含:manifests:是xml的文件,就相当于之前讲到的清单,它描述了应用程序。java:包含所有的Java应用程序和测试类;res:这个包含了资源文件,这些资源是系统带来的,我们也可以自己加一些。其中drawable包含用于各种屏幕分辨率的图像;layout包含布局文件;menu包含菜单文件;mipmap包含用于各种屏幕分辨率的app图标;values包含了字符串和其他值。
  • 其中需要注意的是R。每次你添加、修改或删除资源的时候,都会重新生成R;R的作用是让你能够引用代码中的一个资源。
  • AndroidManifest.xml是一个清单,用来描述应用程序
<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
  • 调试应用程序:对于调试来测试哪句出问题的方式是和在IDEA中是一样的。不同的一点是,Android中提供了Android.util.log类用于记录日志消息,其中会有一些缩写,方便我们进行寻找错误。
  • 第二十五章活动
  • 活动有很多种方法:onCreate:在声明周期中只调用一次;onStrat:在声明中可以调用多次;onResume:可以调用多次;onPause:可以调用多次,在这之后会发生什么取决于活动是否变得完全不可见,如果是的,就调用onStop,否则会调用onResume方法;当活动停止的时候,将调用onDestroy方法,在活动周期中只能调用一次。我在网上看的时候,找到了这张图,我看的王文彬也同样找到了这张图

  • 我们在启动一个新的活动的时候,可以利用Intent方法。如果像得到调用活动的一个结果,可以调用startActivityForResult方法。
  • 第二十六章 UI组件
  • 使用UI工具所做的事情都会反映到布局文件中,以XML元素的形式体现出来,要查看你生成了什么,单击UI工具底部的XML视图即可。
  • Toast
  • 它是一个小的弹出对话框,用于显示一条消息作为给用户的反馈,它不会替代当前的活动,并且只是占据了一条消息的空间
  • Toast toast = Toast .makeText(this ,"20172306", LENGTH_LONG );

    toast .show() ;

    就是一个很好的toast的例子。

  • 通知
  • 通知是出现在状态栏上的一条消息,和Toast不同,通知是持久的,并且将保持显示,直到关闭它或者设备。
  • 通知是android.app.Notification的实例,创建一个通知最方便的方法,是使用一个叫做Builder的嵌套类,可以通过传递一个Context来实例化该类。
  • Notification n = new Notification.Builder(context).bulid();
  • 要发布一个通知,可以使用NotificationManager
  • NotificationManager notificationmanager = (NotificationManager)
  • getSystemService (NOTIFICATION_SERVICE)

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

  • 问题1:首先在安装Android Studio时,安装上了,但是会显示Sync failed 。然后它就会提示让我下载一个gradle.zip,这个问题当时就记着解决,忘记截图了
  • 问题1解决方案:我就跟着下载,然后它就会说,try again。我就又下,结果大约下了十二遍以上,就放弃了,我觉得不是这样的,然后我就上网找解决方法,他说让我在官网上下载zip,但是没什么用,后来另一个同学和我遇到同样的问题,也没解决,后来就重新建了一个项目,就莫名其妙的好了!!!
  • 问题2:在看Toast的时候,记得老师说可以改变toast显示的时间,但是我不知道怎么弄?
  • 问题2解决方案:我就上网查了一下。发现我们可以自己设置一个方法,来设置改变toast的时间。
  • 问题3:学长说我们在做东西的时候,可以不设项目,而是在一个项目中建一个又一个的模块,但是我在建第二个的时候,我的Android Studio就突然gradle又出问题了。
  • 问题3的解决方案:我也不知道怎么回事,就将Android重新启动了一下,就好了,我也不知道为什么,我猜可能是它的反应有点慢!

[代码托管]

这周没有代码!!!!

上周考试错题总结

  • 一个抽象的数据类型包含一个数据结构和操作和访问数据结构的方法。在这些列表中,只有这个向量结合了这两个向量。数组是一个数据结构,但是没有方法(例如插入方法或搜索方法)而引用变量和原始类型是数据,而不是数据结构。

  • 所有这些答案都是面向对象特性的类型。抽象数据类型封装了数据结构和操作数据结构的方法,从而保留了信息隐藏。因此,所有的ADTs都使用隐藏的信息,这样数据结构就不能直接从ADT外部操纵,但是其他面向对象的特性是不需要的。

  • 在链表中,链接是对下一个节点的引用。通过检查参考资料的内容,通过“取消引用”来跟踪链接。节点对象。对象是类的实例。节点的数据部分很可能是int,以及其他类型的数据。

  • 一个简单的线性列表被定向,从它的起始节点到它的结束节点。图和图都没有起始节点,但是树确实是树的根。所以,一个简单的线性列表就是一个退化树的例子,它有一个分支因子,每个节点都有一个单独的继承者,从根开始,到单个叶子(结束节点)结束。

  • 虽然这两个操作都是为各自的抽象数据类型“添加”或“插入”操作,但它们的不同之处在于,push在堆栈的顶部(或前端)添加,而enqueue总是在队列的后面添加

  • 数组是一种数据结构,可以用来存储一系列值,但是数组中没有已经实现的操作来执行列表操作,比如添加到末尾,或者删除给定的值。

  • 队列和堆栈都是抽象的数据类型,它们的实现方法是无关紧要的,它是定义它们的操作(enqueue、dequeue、push、pop)。因此,两个ADTs都可以使用数组或链表来实现。

  • 在Java中,所有的数据都是原语或类。ADT是一种数据结构,因此它不仅仅是一种原始类型,而是一种不同类型的结构。因此,ADT必须在类中定义。并不是所有的类都是ADTs,但是所有的ADTs都被定义为类。

  • 虽然双向列表在每个节点中有多个链接,但是当您绘制一个双向列表的图片时,它仍然是线性的。

  • apt-cache search tree

  • tar –cf dky.tar dky

  • grep –rn main /src

  • 上下左右顺序依次是kjhl

结对及互评

点评模板:

  • 博客中值得学习的或问题:

    • xxx
    • xxx
    • ...
  • 基于评分标准,我给本博客打分:8分。

点评过的同学博客和代码

  • 本周结对学习情况

    • 结对同学学号1
    • 结对学习内容
      • 一起学习了第二十三章到第二十六章
      • 一起做了老师在蓝墨云上的五个实验
      • 一起在做实验时学习了第二十七章和二十八章

其他(感悟、思考等,可选)

 这学期Java的学习很快就要结束了,这貌似也是这学期最后一次写教学的博客了。这一门课我学的不够好,自己也知道原因,一是自己这学期放在Java的时间不够多,很多练习自己都是一知半解的;一个是学习进程太快,自己理解的太慢了,很多时候自己刚学一半就又要进行下两章的学习了。往往会让自己对这门课失去一些兴趣;一个是自己的博客写的吧,不够好,不够细致吧,而且我问题比较少,其实也有,就是很多时候我都想着解决问题就不记得截图,等写的时候,我就不记得都有什么问题了。不过,自己还是没能合理的安排好自己的时间。其实最开始自己还是立志一定要学好Java的,后来渐渐走歪了。我希望自己假期的时候吧,能把Java的一些基础的东西再学习学习,我知道下学期还要继续学习有关知识,我吸取这次的经验,争取在下学期学好这门课

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 193/200 1/1 20/20
第二周 247/440 1/1 22/42
第三周 445/895 2/2 20/62
第四周 885/1780 1/1 43/105
第五周 775/2555 1/1 55 /160
第六周 1171/3726 1/1 38/198
第七周 596/4322 1/1 60/258
第八周 569/4891 2/2 55 /313
第九周 1890/ 6781 1/1 66/379
第十周 1021/7793 1/1 70/449
第十一周 0/ 7793 3/3 50/499

参考资料

原文地址:https://www.cnblogs.com/lc1021/p/9108487.html

时间: 2024-08-25 18:57:46

20172306《Java程序设计与数据结构》第一周总结的相关文章

Java 程序设计入门_第一周(下)

java总结 常用代码:Scanner in = new Scanner(System.in); 快捷键的用法 注释:crtl +/ 快速输入:alt +/      mac:option +/ 选中代码行: shift +上下箭头 一.浮点数 二.优先级 三.类型转换 1.1浮点数 --这样不能完全显示,浮点数跟int的冲突. 解决方案: 12 改为12.0 修改inch int inch 改为 double inch nextInt 改为 nextDouble   读进来的数不是int 而是

20172306 2018-2019 《Java程序设计与数据结构》第一周学习总结

20172306 2018-2019 <Java程序设计与数据结构(下)>第一周学习总结 教材学习内容总结 第一章 概述 (程序=数据结构+算法 软件=程序+软件工程) 1.1 软件质量 软件工程师一门关于高质量软件开发的技术和理论的学科 软件工程的目标:1.解决正确性问题 2.按时且在预算之内给出解决方案 3.给出高质量的解决方案 4.以合情合理的方式完成上面的事情 高质量软件的特征 正确性:我认为是我们所做的都是为了解决一个正确性问题. 可靠性:降低软件的故障程度和概率 健壮性:可以很好地

20145320《Java程序设计》第3周学习总结(第四章)

20145320<Java程序设计>第3周学习总结(第四章) 教材学习内容总结 对象(Object):存在的具体实体,具有明确的状态和行为 类(Class):具有相同属性和行为的一组对象的集合,用于组合各个对象所共有操作和属性的一种机制 从类看对象:类定义可以视为一个具有类似特性与共同行为的对象的模板,可用来产生对象 从对象看类:类的产生,是从少数实例,推广到大量相似实例的抽象化过程(abstraction) 类是对象的设计图,对象是类的实例,生成对象要先定义类 4.1 类与对象 定义类使用c

20145105 《Java程序设计》第3周学习总结

20145105 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 一.类与对象 要产生对象必须先定义类,类是对象的设计图,对象是类的实例. (一)定义类 1.类定义时使用class关键词 2.建立实例时使用new关键词 3.在类中定义的变量,叫做值域成员或对象数据成员 ps:一个原始码中可以有多个定义类,但只能有一个是公开类,且文档中的主文档名必须与公开类相同 (二)使用标准类 1.使用java.util.Scanner(创建实例) 2.使用java.math.BigD

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

20165318 2017-2018-2 <Java程序设计>第六周学习总结 教材内容学习总结 第八章 常用实用类 1.String类 String类用来处理字符序列,在java.lang包中,程序可以直接使用String类.需要注意的是Java把String类声明为final类,因此用户不能扩展String类,即String类不可以有子类. 常量对象:字符串常量对象是用双引号括起的字符序列,例如:"你好"."12.97"."boy"

20172330 2017-2018-1 《Java程序设计》第五周学习总结

20172330 2017-2018-1 <Java程序设计>第五周学习总结 教材学习内容总结 第五章 首先是对各种各种运算符的了解:刚开始以为相等就是=,还有其他一些符号都挺简单的,然后在进一步学习知道了"=="与"!="都是相等型运算符,而"!","&&","||"则分别代表非,与,或. 教材学习中的问题和解决过程 其次是if语句: 1.if语句由保留字if.紧随其后的布尔表

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

20172320 2017-2018-2 <Java程序设计>第八周学习总结 教材学习内容总结 1.绑定多数情况下发生在编译阶段 2.被延迟的请求事件成为后绑定或动态绑定,后绑定的效率低于编译阶段的绑定效率 3.多态性引用:继承方式和接口方式 4.一个引用变量可以指向有继承关系的任何类的任何对象 5.实际将调用的方法版本取决于对象的类型而不是引用变量的类型 6.一个接口引用变量可以指向实现该接口的任何类的任何对象 7.选择法排序通过相继的将各值放在自己的最终位置,插入排序法是不断地将一个新元素

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

20172320 2017-2018-2 <Java程序设计>第十周学习总结 教材学习内容总结 1.集合是一种对象,类似于保存其他对象的存储库 - 集合的同构意味着这种集合保存类型全部相同的对象:异构意味着可以保存各种类型的对象 2.抽象数据类型(ADT)是由数据和在该数据上所实施的具体操作构成的集合. - ADT有名称.值域和一组允许执行的操作 - ADT上可以执行的操作与底层的实现分离开了 3.一个动态数据结构用链来实现,动态数据结构的大小规模随需要增长和收缩 4.线性数据结构 - 队列:

20172306 《程序设计与数据结构》实验四报告

20172306<程序设计与数据结构>实验四报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 刘辰 学号:20172306 实验教师:王志强 助教:刘伟康和张旭升 实验日期:2018年5月31日 必修/选修: 必修 1.实验内容 (1)Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)>第二十四章: 参考http://www.cnblogs.com/roc

20172320 2018-2019-1 《Java程序设计》第3周学习总结

20172320 2018-2019-1 <Java程序设计>第3周学习总结 教材学习内容总结 1.队列元素是按先进先出(FIFO)的方式处理.比较FIFO和LIFO:在栈中,其处理过程只在栈的某一端进行:而在队列中,其处理过程可在队列的两端进行 2队列的操作 操作 说明 enqueue 向队列末端添加一个元素 dequeue 从队列前端删除一个元素 first 考察队列前端的那个元素 isEmpty 判定队列是否为空 size 判定队列中的元素数目 toString 返回队列中的字符串表示