zoukankan      html  css  js  c++  java
  • 20175209 《Java程序设计》第三周学习总结

    20175209 《Java程序设计》第三周学习总结

    教材学习内容总结

    第四章知识点

    1.发展阶段:

    面向机器——面向过程——面向对象(特点:封装性,继承性,多态性)

    2.类:

    • 声明变量(成员变量,类内均有效)
    • 定义方法
      • 方法头(有无参数均可)
      • 方法体(内部定义变量为局部变量,只在内部有效)

    成员变量有默认值,局部变量没有默认值;对成员变量的操作只能在方法中;如果局部变量与成员变量的名字相同,方法会隐藏成员变量。

    3.构造方法与对象:

    构造方法的名字必须与类名完全相同,并且没有类型。

    对象的声明格式为:类名 对象名

    声明后的对象为空对象,需要有关键字new进行内存分配;当两个变量具有相同的引用时,他们就具有相同的实体

    4.参数传值:

    • 基本数据类型的传值:该参数传递的值得级别不能高于该参数的级别
    • 引用类传值:一个类中两个对象如果引用相同,二者具有完全相同的变量

    5.实例成员与类成员

    • 实例变量与类变量
      • 有static修饰的为类变量,没有的则为实例变量
      • 所有对象共享类变量
      • 类名访问类变量,对象访问实例变量
    •  实例方法与类方法
      • static修饰的为类方法
      • 实例方法只能通过对象调用,类方法类名和对象均可调用
      • 实例方法既可以操作实例变量也可以操作类变量

    6.方法重载:

    要求:参数个数不同或参数个数相同但参数类型存在不同

    7.this关键字:

    • 构造方法中的this可以省略
    • 实例方法中成员变量的名字和局部变量名字相同时,this不可省略

    8.package与import

    联系:package的作用:通俗来讲是将源文件编译后的类的字节码文件打包至某一文件下,即打包,在运行时通过“包名.主类名”的方式进行。Java中的很多类已经背打包好,所以我们只需要通过import引用即可。import的作用是引入包中的类和接口,例如书上很多程序在需要键盘输入时需要引入java.util.*。

    9.访问权限:

    访问权限限制符:private、protected、public、友好的

    • private修饰私有变量和私有方法,在另一个类中不能通过类名来操作该类中的私有变量。private可以对类中变量起保护作用
    • protected修饰受保护的成员变量和方法,创建对象的类与该类在同一个包中,才可以通过类名访问
    • 不能用protected 和private 修饰类
    • 权限高低排序 public——protected——友好的——private

    10.UML图:

    UML图可以直观的体现要操作的类名:具体类和具体方法用常规字型表示,抽象类和抽象方法用斜体表示;同时可以清晰地显示类的名字类型和初始化值,便于观察各类之间的流水关系和调用关系。

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

    问题1:对于书上4.6.1组合与复用中的知识不太理解,主是不太理解引用的传递的方法

    问题1解决方案:书上4_18的例子很好的给出了参数的引用和传值方式,通过对书上例子的反复尝试和视频中对于例4_8的讲解理解了这部分知识

     

    关于IDEA使用时存在的问题和优点

    开始时我选择在Linux中安装IDEA,但是虚拟机一直阻止我下载,开始时我认为是自己虚拟机版本的问题,因为虚拟机需要通过Jetbrains TOOLBOX进行下载,后来发现是自己下错了IDEA的版本,下成了Community用的

     

     正常应该下载Ultimate的。

    所以我在windows中下载了IDEA,编写程序时都很顺利,而且用IDEA也非常方便,一些命令都可以通过简化命令+Tab键生成,和之前在终端中编译运行方便很多。尤其是本章的例题较多,使用IDEA不需要反复用wq保存退出查看其他文件,可以同时查看多个文件。但是在向码云中推送文件时出现了一些问题:因为我在Windows上的git安装时间较早,并且在当时安装时建立过一个仓库,这次作业在上传时虽然可以在现在使用的仓库中显示,但是在查看文件时出现了问题,很多通过Windows上传的无法查看,因此我又在Linux中安装了正确版本的IDEA并重新输入代码,之后可以成功的推送到码云上。

    由于本次选择使用IDEA进行编写,而且IDEA的编译和运行可以同时进行,出现错误更改也比较方便,因此也节省了大量时间。

    上周错题分析

    1.表达式-2 >> 1的值为

     A.2^31 – 1
    B.2^15 – 1
    C.1
    D.-1
    正确答案: D 
    你的答案: C
    解析:带符号右移(“ >> ”),即有符号位时,负数符号位补1,正数符号位补0, -2 的二进制求法是正数取反加1,因此 2 的二进制表示为0000 0000 0000 0000 0000 0000 0000 0010 ,取反加一为1111 1111 1111 1111 1111 1111 1111 1110 ,即 -2 的二进制表示。带符号右移之后为 1111 1111 1111 1111 1111 1111 1111 1111 ,除符号位之外,减一取反,得到带符号十进制数为-1。
     
    2.下列说法错误的是
     A.“字符类型”中的“字符”指Unicode表中的一个字符。
    B.使用System.out.println(“”)输出反斜线。
    C.short类型与char类型均分配2个字节内存,两者取值范围一致。
    D.使用(int)’A’观察一个字符在Unicode表中排序位置。
    正确答案: B C 
    你的答案: C D
    解析:B项:“”本身在Java中有特殊含义,表示转义字符,因此输出时需要再次转义。C项:char类型是无符号的,与short类型不一致。
     
    3.下列关于课本P29示例程序的说法,正确的是
    A.如果注释掉第一行“import java.util.*;”,则“System.out.println(Arrays. toString(a));”和“Scanner scanner = new Scanner(System.in);”两句会报错。
    B.折半查找时,必须保证数组是有序的。
    C.该程序所示的排序方法为冒泡排序法。
    D.count>N/2说明查找结束,没有找到该数字。
    正确答案: A B C D 
    你的答案: B C D
     
    代码托管
    https://gitee.com/wangzihong/20175209
     
    脚本运行截图
  • 相关阅读:
    [转载]Dorado学习笔记
    [转载]dorado学习笔记(二)
    [转载]Struts+Spring+HibernateSSH整合实例
    [转载]Dorado中DataTable使用技巧汇总
    [转载]Struts+Spring+HibernateSSH整合实例
    JAVA基础知识复习面试笔试宝典
    [转载]Dorado中DataTable使用技巧汇总
    [转载]Dorado学习笔记
    IE网页中PNG格式图片无法显示的解决方法
    网络字节序和主机字节序
  • 原文地址:https://www.cnblogs.com/wangzihong0213/p/10548047.html
Copyright © 2011-2022 走看看