20165312 2017-2018-2 《JAVA程序设计》第3周学习总结

一、第四章知识点总结

1.类

  • 类的实现包括两个部分:类声明和类体。
  • class是关键字,用来定义类。
class 类名 {
类体的内容
}
  • 类名若使用拉丁字母,则首字母大写;若由几个“单词”符合完成,每个单词的首字母大写。
  • 类体的内容包括两部分,一部分对变量的声明,另一部分是方法的定义。
  • 变量声明部分所声明的变量是成员变量,在整个类中有效,有默认值。;方法中声明的变量以及方法中的参数是局部变量,仅在方法中有效,且没有默认值。
  • 声明成员变量时可以同时赋值,但是在类体中不能有单独赋值的语句。
  • 方法的定义包括两个部分:方法声明和方法体。方法类似于C中的函数。
方法的类型 方法名称(参数) {
方法体的内容
}

2.构造方法和创建对象

  • 构造方法是一种特殊的方法,名字和类的名字相同,并且没有类型。
类名(参数) {
方法体内容
}
  • 如果类中没有编写构造方法,系统会默认该类中只有一个构造方法,默认的构造方法是无参数的,且方法体中没有语句。如果类中定义了构造方法,那么java中不提供构造方法。
  • 对象的声明:
类的名字 对象名字;
  • 为声明的对象分配变量
对象名字 = new 类的名字();
  • 使用对象

对象操作自己的变量 对象.变量;

对象调用类中的方法 对象.方法名;

  • 当用类创建了一个对象时,类中的成员变量在分配内存空间,这些内存空间称作该对象的实体或对象的变量,而对象中存放着引用。一个类创建的两个对象,如果具有相同的引用,则有完全相同的实体。

3.类与程序的基本结构

  • java应用程序从主类的main方法开始执行

4.参数传值

  • 当对象调用方法时,参数被分配内存空间,参数变量必须有具体的值。
  • 对于基本数据类型的参数,向该参数传递的值的级别不可以高于该参数的级别(精度)。
  • 对于引用型(包括数组、对象、接口)的参数,传值传递的是变量中所存放的引用,而不是变量所引用的实体。

5.实例成员与类成员

  • 声明成员变量时,用static修饰的是类变量(static变量、静态变量),否则为实例变量
  • 不同对象的实例变量不同,所有对象共享类变量
  • 声明方法时,用static修饰的是类方法(静态方法),否则为实例方法
  • 类方法不仅可以被任何对象调用,还可以通过类名调用。类方法不能操作实例变量。

6.方法重载

  • 方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数不相同,或者参数个数不相同,或者参数类型不同。

7.this关键字

  • this表示某个对象
  • this不能出现在类方法中
  • this在类的构造方法中,代表给构造方法所创建的对象。
  • this在实例方法中时,代表正在调用该方法的当前对象。当实例变量在实例方法中出现时 this.成员变量;当static成员变量在实例方法中出现时 类名.成员变量

8.包

  • package语句作为java源文件的第一句话
package 包名;
  • 运行时注意区别

9.import语句

  • 一个类可能需要另一个类生命的对象作为自己的成员或者方法中的局部变量,若两个类在同一个包中,是可以的。若不在同一个包中,则可以使用import语句。
  • 引入java.util包中的Date类(类库中的类) import java.util.Date;
  • 引入java.util包中的所有的类(类库中的类) import java.util.*;
  • 引入自定义包中的类 import 包名.*;

10.访问权限

  • private修饰的成员变量和方法称为私有变量和私有方法。只有在本类中创建该类的对象时,这个对象才能访问自己的私有变量和类中的私有方法。
  • public修饰的成员变量和方法称为共有变量和共有方法。在另外一个类中创建该类的对象时,这个对象也可以访问共有变量和共有方法。
  • protected修饰的成员变量和方法称为受保护的成员变量和受保护的方法。在另外一个类中创建给类的对象,若这两个类属于同一个包,则可以访问受保护的成员变量和受保护的方法,否则不行。
  • 不用public、public、protected修饰的成员变量和方法是友好变量和友好方法。如果源文件使用import引入了别的包中的类,并且用这个类创建了一个对象,则这个对象不能访问友好变量和友好方法。
  • 在一个源文件中类都属于同一个包中。

11.基本类型的类封装

  • java.lang包中有Byte、Integer、Short、Long、Float、Double、Character。
构造方法 调用方法返回对象含有的基本型数据
Double(double num) doubleValue()
Float(Float num) floatValue()
Byte(byte num) byteValue()
Short(short num) shortValue()
Integer(int num) intValue()
Long(Long num) longValue()
  • Character类的构造方法: Character(char c) Character类中的一些常用类方法:public static boolean isDigit(char ch) //ch是数字字符返回true public static boolean isLetter(char ch) //ch是字母返回true

代码托管

统计本周代码行数截图:

二、本周遇到的问题以及对上周的查漏补缺

1.在向码云上传代码的时候出现“Everything uo to date”的错误,我在蓝墨云中提问,根据同学的提示成功上传了代码。

解决方法:

(1)创建新分支:git branch newbranch

(2) 查看新分支是否成功:git branch

(3)切换分支:git checkout newbranch

(4)git add .

(5)git commit -a

(6)合并分支:git merge newbranch

(7)git diff

(8)git push -u origin master

(9)删除分支:git branch -D newbranch

参考链接:博客

2.做上一周测试题目时学习的新的知识

做上一周测试题目有很多不会的,然后自己查书发现了很多遗漏的知识点。还有一些是通过百度的。因为具体的答案还不清楚,具体的题目差错分析会在下周的博客中写。

1.Ctrl+Shift+T创建窗口,Alt+number进入第n个窗口
2.计算器中八进制表达方式:在前面加一个0
3.计算器中十六进制表达方式:以0x/0X开头
4. >>: 用于有符号的右移,又叫做算数右移, 在移动过程中,最高位补符号位

>>>:用于无符号的右移,在移动过程中,最高位补0

<<:用户左移,这里没有符号的概念,左移后,最低位补0

参考链接:java中<<,>>和>>>

5.复制数组的四种方法
  • 循环结构
  • 使用Object类的clone()方法
  • 使用Systems的arraycopy
  • Arrarys类的copyOf()方法与copyOfRange()方法

20165312 2017-2018-2 《JAVA程序设计》第3周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. flask请求上下文

    先看一个例子: #!/usr/bin/env python # -*- coding:utf-8 -*- import threading # local_values = threading.loc ...

  2. js 获取getElementsTagName()方法返回值的内容

    <div id="news-top" class="section"> <h3>Some title</h3> <di ...

  3. 第8天【文件系统挂载、ext文件系统及read命令、Linux RAID、lvm应用】

    文件系统挂载与管理工具(01)_recv 文件系统管理: 将额外文件系统与根文件系统某现存的目录建立关联关系,进而使得此目录作为其他文件访问入口的行成为挂载: 解除此关联关系的过程 吧设备关联挂载点: ...

  4. vue组件利用formdata图片预览以及上传

    转载修改 在项目中直接新建一个单文件页,复制一下代码即可       upload组件: <template> <div class="vue-uploader" ...

  5. Vue(九) 自定义指令

    前面介绍了许多 Vue 内置的指令,比如 v-if.v-show等,这些丰富的指令能满足我们绝大部分的业务需求,不过在需要一些特殊功能时,我们仍然希望对 DOM 进行底层的操作,这时就要用到自定义指令 ...

  6. python--jianja2

    一:渲染模版 要渲染一个模板,通过render_template方法即可. @app.route('/about/')def about():return render_template('about ...

  7. 【阅读笔记】《C程序员 从校园到职场》第八章 算法和协议(Part 2)

    原文链接: 让你提前认识软件开发(19):C语言中的协议及单元测试示例 CSDN博客 https://blog.csdn.net/zhouzhaoxiong1227/article/details/2 ...

  8. mySQL explain解释

    1).id列 数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询.   2).select_type列常见的有: A:simpl ...

  9. SqlServer根据表中ID加序号

    正序列号select ROW_NUMBER() over(order by Id) as xh,Id,Name,TelNumber,Zhijin from Users1 反序列号select 序号=( ...

  10. 编译darknet出现libpng16.so.16:对‘inflateValidate@ZLIB_1.2.9’未定义的引用

    cd /usr/lib/x86_64-linux-gnu sudo ln -s ~/anaconda/lib/libpng16.so.16 libpng16.so.16 sudo ldconfig## ...