20165210 Java第三周学习总结
20165210 Java第三周学习总结
教材学习内容总结
- 第四章学习总结
- 编程语言的几个发展阶段:
- 面向机器语言
- 面向过程语言
- 面向对象语言
- 类:
- 类声明:
class People {
...
}
class 动物 {
...
}
- 类体:
class People {
类体的内容
}
class 动物 {
类体的内容
}
- 成员变量:
1. 类型:
class Factory {
float [] a;
Workman zhang;
}
class Workman {
double x;
}
2. 有效范围:
成员变量在整个类内都有效,其有效性与它在类体中书写的先后位置无关。
3. 方法:
方法头 {
方法体的内容
}
- 构造方法与对象的创建
- 构造方法:
Lader() {
}
- 创建对象:
类的名字 对象名字;
- 使用对象:
对象。变量;
- 类与程序的基本结构:
- 将应用程序涉及的Java源文件保存在相同的目录中,分别编译通过,得到Java应用程序所需要的的字节码文件。
- 运行主类。
- 参数传值
- 传值机制
- 基本数据类型参数的传值
- 引用类型参数的传值
- 可变参数:
例:
public void f(int ... x)
public void g(double a,int ... x)
public void method(int ... x,int y)
- 对象的组合:
- 组合与复用:
如果一个对象a组合了对象b,那么对象a就可以委托对象b调用其方法,即对象a以组合的方式复用对象b的方法。
- 实例成员与类成员:
- 实例变量和类变量的声明
class Dog {
float x;
static int y;
}
- 实例变量的类变量的区别
1. 不同对象的实例变量互不相同
2. 所有对象共享类变量
3. 通过类名直接访问类变量
- 实例方法和类方法的定义
class A {
int a;
float max(float x,float y) {
...
}
static float jerry() {
...
}
static void speak(String s) {
...
}
}
- 实例方法和类方法的区别
1. 对象调用实例方法
2. 类名调用类方法
3. 设计类方法的原则
- 方法重载
- 方法重载的语法规则
满足条件:
- 参数的个数不同
- 参数个数相同,但参数列表中对应的某个参数的类型不同
- 避免重载出现歧义
class Dog {
static void cry(double m,int n) {
System.out.println("小狗");
}
static void cry(int m,double n) {
System.out.println("small dog");
}
}
- this关键字
- 包
- 包语句:
package 包名;
- 有包名的类的存储目录
package tom.jiafei;
c:\1000>javac tom\jiafei\源文件
- 运行有包名的主类
c:\1000>java tom.jiafei.主类名
- import语句
- 引入类库中的类
import java.until.*;(引入java.until包中所有的类)
import java.until.Date;(引入java.until包中的Date类)
- 对象数组
使用对象数组,即数组的元素是对象:
Student [] dtu;
dtu = new Student[10];
学习中遇到的问题及解决
- 在学习中我不是很明白这个this关键字到底是干什么用的?
- 有包语句时是必须要放在包后的那个文件夹里才能编译吗?可不可以不建立那个文件夹?
代码托管
感悟
本周的代码比上周的多还长,但通过本周的学习掌握了一些关键词的用法,而且我觉得对象数组是一块很重要的内容,还学了包语句,这周还是很有收获的