zoukankan      html  css  js  c++  java
  • 《程序设计与数据结构》第十一周学习总结

    学号 20172326 《程序设计与数据结构》第十一周学习总结

    教材学习内容总结

    • Android操作系统是一种多用户的Linux系统
    • 4种Android应用程序组件 活动 服务 广播接收者 内容提供者
    • intend是一条信息,发送给系统或另外一个应用程序,以要求执行一个动作。通常使用intend来启动一个活动或启动一个服务或发送一条广播。
    • SDK:Android软件开发工具包,可在各种操作系统上使用
    • Activity的生命周期方法:onCreate,onStart,onResume,OnPause,onStop,onRestart,onDestroy
      -应用程序创建的第一个窗口叫做主活动

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

    • 问题1:

    什么是生命活动周期方法?

    • 问题1解决方案:生命周期很好理解,但是在后面加上方法就显得有些抽象。书上也很详细的将其中每个具体方法进行讲解。但是,具体到一个app中是怎样的呢?先用一个图进行理解(图)onCreate和onDestroy方法在每个生命周期中只执行一次,而其他均可循环。这里着重探究onPause、onStop、onDestroy方法。
    1. 当活动开始进入运行阶段后,假如用户执行其他活动时,就需要执行onPause操作,使得减少资源的浪费。而此时的内存依旧占用。此时,activity仍然处于部分可见的状态。
    2. 当活动调用onStop方法时,首先,活动将处于不可见状态。但是它依然保持所有状态和成员信息,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,Stopped的Activity将被杀掉。
    3. 当Activity(用户调用finish()或系统由于内存不足)被系统销毁杀掉时系统调用,(整个生命周期只调用1次)用来释放onCreate()方法中创建的资源,如结束线程等。
    • 问题2:xml与UI设计能否互逆?
    • 问题2解决方案:答案是可以。打开相应的文件,点击text,就可以看到xml文件下的信息。首先,xml是一种简单的数据存储语言。所以,每进行一个页面设计的改动,xml文件中的代码就会进行变动。这也是图形界面的好处。而我们创建的一个个诸如button的按钮都是以对象的形式保存起来的。UI设计有三种方式使用XML布局文件控制布局,使用Java代码,二者混合使用,三种方式。其中使用XML文件控制布局是一种较为推荐的方式。
    • toast的时间控制问题:
    • 首先,toast有两种默认的时间,LENGTH_DURATION = 3500毫秒,SHORT_DURATION = 2000毫秒。也就是说,无论我们设置多长时间,最终影响Toast弹窗时间的只有Toast.LENGTH_LONG和Toast.LENGTH_SHORT两个参数。
      如下代码即可实现,以1000毫秒为单位。
    Toast toast=Toast.makeText(RegistActivity.this,"这是可以随意设置时间的Toast", Toast.LENGTH_LONG);
    showMyToast(toast,10*1000);
    
    • 焦点问题
    • 简单理解应该就是Windows系统里的光标,如果界面上有两个按钮,假设你按了回车,这时候究竟代表着你按了哪个按钮呢?这时候就需要Focus来帮忙了,因为如果一个View得到焦点,那么这个View就可以处理键盘的输入,做出回应。

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

    暂无

    错题改正

    • 1.

    • 理解:ADT(抽象数据类型)通过固有数据类型(高级编程语言中已实现的数据类型)来实现。将数据类型、方法进行封装。从而使得外部方法无法调用

    • 2.

    • 理解:数组是静态的,如果其空间已满,那么将不能再继续在他的内部加入元素。

    • 3.

    • 理解:Last in first out 后进先出

    • 4.

    • 为了实现动态结构可以按照需要增加长度的特点,就需要指针(对象的引用)来实现。

    • 5.

    • 理解:Java中的链接是对下一个对象的引用

    • 6.

    • 线性数据结构是一维的,也就是说上一个链接只与下一个有引用关系。

    • 7.

    • 理解:这部分课本上未提及,也不是很懂.先暂时贴上解析: A simple linear list is directed, from its starting node to its end node. Neither graphs nor digraphs have a start node but, a tree does: the root of the tree. So, a simple liner list is an example of adegenerate tree one which has a branching factor of one, with each node having but a single successor, beginning at the toot, and ending at the single leaf (end node).

    • 8.

    • 理解:两者意思相同,都是加入数据,不同的是,栈在栈顶加入,队列是在队尾加入

    • 9.

    • 理解:ADT基于基本数据类型,所以,它必须要在类中声明,否则不能实现

    • 10.






    • 理解:34 36 37 40 41 42 47 50这些题目均为Linux命令行下的命令,统一做以整理。

    • sudo apt-get upgrade 来更新系统

    • chomd 777 pdds来修改文件pdds的权限,并使其拥有者、拥有者所在的组和其他用户都拥有全部权限。

    • apt-cache search tree来查找是否装有软件tree

    • 查找五天之内src目录中删除的文件的命令是find/src/-ctime-5

    • Linux Bash中,使用tar命令把文件dky打包成dky.tar的命令是tar-cf dky.tar dky

    • Linux Bash中,使用grep查找当前src目录下所有包含main函数的文件,并要求显示当前行号的命令是 grep -rn main /src

    • Linux Bash中,使用tree -D src来查看目录下文件的更改时间

    • Linux Bash中,为所有人对file.txt文件添加写入权限的命令是chmod a+w file1.txt 或者 chomd 666 file.

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

    • 本周是学习Android的第一周,可以说是博大精深,能自己整出一个app来十分开心,但我也同样意识到这其中所需要掌握的方法之多的必要性。

    参考资料

  • 相关阅读:
    php无法保存cookies问题解决
    织梦(DEDECMS)首页调用相关投票的方法(自动更新)
    php导出任意mysql数据库中的表去excel文件
    学用.NET实现AutoCAD二次开发
    JS自动滚屏程序
    object c 的入门教程
    php如何截取字符串并以零补齐str_pad() 函数
    自己制作软键盘的几个关键技术解析
    php出现php_network_getaddresses的解决方法
    wamp环境下php命令运行时出现错误:无法启动此程序,因为计算机中丢失OCI.dll。尝试重新安装该程序以解决此问题
  • 原文地址:https://www.cnblogs.com/326477465-a/p/9119065.html
Copyright © 2011-2022 走看看