1.对于Dog myDog=new Dog();的深层理解
-
这一句是在引用对象
-
具体实现:
1. 声明引用变量:Dog myDog
要求java虚拟机分配空间给引用变量,并将此变量命名为myDog,固定为Dog类型
产生了一个控制Dog类型的遥控器,它拥有Dog中所有method;以及一个盛放遥控器的
2. 创建对象:new Dog()
要求Java虚拟机分配堆空间给新建的Dog对象
3. 连接对象和引用变量:Dog myDog=new Dog();
将新建的Dog对象和myDog这个引用变量联系起来
将遥控器和对象连接
2.数组
-
数组是一个object,其中的元素不是primitive变量就是object(主要讲)
对于对象数组而言,数组中每个变量都是盛有遥控器的杯子,它们被放进杯架里
-
声明过程(创建遥控器,控制数组)
声明一个遥控器:int[] nums or int nums[];
创建一个大小为7的数组杯架:new int[7];、
遥控器指向杯架:nums=new int[7];
赋值:nums[0]=6……(对象数组的话,将杯架中的遥控器和对象连起来)
-
-
相关函数
length:数组的元素个数 —— args.length==一个int数
-
函数调用:nums[2].setSize(30);
-
数组复制:复制的不应该是同一个对象,而是另起一个对象
法一:loop
法二:arraycopy()
System.arraycopy(nums, 0, nums2, 0, nums.length);
3.Javadoc:从源代码中的文档注释生成 HTML 格式的 API 文档的工具
- 文档注释形式:
/**
* (tags)+description
*两个部分之间用空行分隔
* (tags)+description
*/
2.常用tags及其顺序
3.实例
4.产生.java文件的doc的cmd指令:
javadoc -d docs file.java
4.关键字static
1.介绍:使用 static 修饰符修饰的变量或方法,称为静态/类 变量/方法,归整个类所有。
2.静态方法:一种不依靠实例变量、不需要对象的行为
静态变量:它的值对所有同class来说,都是相同的;并且只会在第一次被载入时初始化
3.调用:
静态方法不能调用非静态成员,编译会报错;但引入参数可以不是静态