20155335  2006-2007-2  《Java程序设计》第三周学习总结

##  教材学习内容总结

首先,关键是区基本类型和类类型,,产生对象必须定义类,类是一个概念,并不存在,对象是存在的,符合累的定义,Java程序由一个个类构成类的里面是变量和函数,

主函数在类中形成的代码如下

Public  class  Mytest{

Public  static  void  main(String  args[  ]){

}

}

类定义使用class关键词。

对象和引用的关系

Java中,是对象被引用所操作,好比指针,引用和对象关联在一起,否则引用不会任由我的控制,,假如创建一个String的引用则有

String  S

此时并未和任何对象关联,如果做一些操作,此时调用会出一些问题,(除了对于一些基本类型外,都会在定义时赋予初值),关联的方法为

String  S=new  String();

或String  S=“  ”;

进行关联时,不妨用new,来创建一个对象,,来进行关联,同时也进行初始化。

一般来说,存储引用和基本类型变量,栈主要通过指针上下移动对内存进行分配和释放,

New意味着分配一块新的内存,分配内存是为了装对象,程序执行new的时候,堆会,分配一个内存空间给对象,堆进行内存分配和释放时要比栈消耗更多时间。

String  []类和数组

String  类是字符串的类型,构造函数

String  {

Byte[]

Bytes

};(通过byte数组构造字符串对象。)

数组对象是要操作,数组并不是单纯地数据集合,,使用new建立数组后,每个索引元素都有默认值,注意不必指定数组长度。

代表建立数组对象的类定义在哪?由JVM动态产生。

理解封装的概念

封装即为了让其他代码无法自由获取到自身的属性,把过程和数据包围起来,对数据的访问只能通过已定义的界面,将对象看成一个整体。

理解构造

在定义类时,可以使用构造函数定义对象建立的初始流程,构造函数与类同名,无需声明返回类型。

重载

只要方法名相同,参数表不同,就可以构成方法重载,方法重载也叫编译时多态,由编译时来确定调用那个方法,其遵从向上就近匹配原则。

重载要满足的条件有

必须是同一个类。

方法名一样。

参数类型不一样或参数数量不一样。

Static  中的方法

Static的作用简而言之,即方便在没有创建对象的情况下进行调用(方法/变量)。

被static修饰的成员变量和成员方法独立于该类的任何对象,,只要这各类被加载,static对象可以在他的任何对象创建之前访问,而无需引用任何对象。

声明为static的方法有以下限制

1.他们仅能调用其他static方法。

2.只能访问static数据

3.不能以任何方式引用this或super。

调用一个静态方法为类名.方法名。

声明为static的变量实际上为全局变量,声明一个对象时,该类所有实例变量公用一个static变量。

内部类可被声明为static类,声明为静态的内部类可以直接作为一个普通类来使用,用public修饰的static成员变量和成员方法本质是全局变量和全局方法,也可以由private修饰,表示这个变量可以在类的区块代码上,或者在类的其他静态成员方法中使用,但是不能在其他类中通过类名直接引用。

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

-  1问题

操作数组对象P102页的运行结果前三个都为null

-  xx1解决方案

已知类类型的初始值都为null。

Integer  []  scores=new  Integer[3];建立的对象个数为0,。

-  xx2问题

如何让p135页的重载正确?

-  xx2解决方案

将第六行中public  double  someMethod(int  i)改为

Public  double  someMethod(float  i)

-  ...

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

-  xx1问题

-  xx1解决方案

-  xx2问题

-  xx2解决方案

-  ...

##  [代码托管](链接)

-  代码提交过程截图:

-  运行  git  log  --pretty=format:"%h  -  %an,  %cd  :  %s"  并截图

-  代码量截图:

-  运行  find  src  -name  "*.java"  |  xargs  cat  |  grep  -v  ^$  |  wc  -l  并截图

##  上周考试错题总结

-  错题1及原因,6.~0b1011的十进制值是-12,,由二进制1011得反码为1100,值为12,取反,得-12.

-  错题2及原因,9.System.out.printf(“%b,11),的输出结果为1011,是错的,而是其补码0100.

-  ...

最新文章

  1. 五分钟搭建起一个包含CRUD功能的JqGrid表格
  2. 用avalon实现一个完整的todomvc(带router)
  3. html5 css3实现图中结构
  4. 2016 大连网赛---Different GCD Subarray Query(GCD离散+树状数组)
  5. 在pc游览器端模拟移动端幻灯片
  6. (13)odoo翻译
  7. Ng-include 例子
  8. php中utf8 与utf-8 与utf8 无BOM
  9. 批处理就是windows的杰作啊
  10. rsyslog 日志归类思路--根据syslog local5 nginx-zjzc01;
  11. java的访问控制(包、访问修饰符、修饰符)
  12. Swift实现糗事百科Demo(实战项目)
  13. [置顶] cocos2d-x 3.0游戏开发xcode5帅印博客教学 004.[HoldTail]主角的上下飞行跟移动
  14. Loadrunner常见错误处理方法
  15. CSS关键词的值-currentColor关键字提示文字(当前颜色)
  16. __NSArrayI __NSArray0 __NSSingleObjectArrayI __NSPlaceholderArray __NSArrayM
  17. C++Primer第五版——习题答案详解(四)
  18. Maven的conf目录下settings.xml的简单配置
  19. 101空降师506团2营E连全体成员
  20. leetcode 191:统计1的个数;5 最长回文串;54,59 蛇形矩阵

热门文章

  1. Mybatis实现
  2. Java常用类之Math类
  3. C# 如何在winform中嵌入Excel,内嵌Excel,word
  4. 3dContactPointAnnotationTool开发日志(十五)
  5. 实验吧编程题:Hashkill
  6. [STL] 如何将一个vector赋给另一个vector
  7. bzoj4332[JSOI2012]分零食
  8. Python 断言和异常
  9. BZOJ5190 Usaco2018 Jan Stamp Painting(动态规划)
  10. 使用canvas控制gif图片的播放与暂停