20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结

时间:2022-11-13 17:17:24

20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结

教材学习内容总结

1.1.编程语言的几个发展阶段:

  • 面向机器语言
  • 面向过程语言
  • 面向对象语言

2.1.类:

  • 类声明:
class People {
...
}
class 动物 {
...
}
  • 类体:
class People {
类体的内容
}
class 动物 {
类体的内容
}
  • 成员变量:
1. 类型:
class Factory {
float [] a;
Workman zhang;
}
class Workman {
double x;
}
2. 有效范围:
成员变量在整个类内都有效,其有效性与它在类体中书写的先后位置无关。
3. 方法:
方法头 {
方法体的内容
}

2.2.构造方法与对象的创建

  • 构造方法:
Lader() {

}
  • 创建对象:
类的名字 对象名字;
  • 使用对象:
对象。变量;
  • 类与程序的基本结构:

    1.将应用程序涉及的Java源文件保存在相同的目录中,分别编译通过,得到Java应用程序所需要的的字节码文件。

    2.运行主类。
  • 参数传值

    1.传值机制

    2.基本数据类型参数的传值

    3.引用类型参数的传值

    4.可变参数:
例:
public void f(int ... x)
public void g(double a,int ... x)
public void method(int ... x,int y)
  • 对象的组合:

    1.组合与复用:

    如果一个对象a组合了对象b,那么对象a就可以委托对象b调用其方法,即对象a以组合的方式复用对象b的方法。
  • 实例成员与类成员:

    1.实例变量和类变量的声明
class Dog {
float x;
static int y;
}

2.实例变量的类变量的区别

1. 不同对象的实例变量互不相同
2. 所有对象共享类变量
3. 通过类名直接访问类变量

3.实例方法和类方法的定义

class A {
int a;
float max(float x,float y) {
...
}
static float jerry() {
...
}
static void speak(String s) {
...
}
}

4.实例方法和类方法的区别

1. 对象调用实例方法
2. 类名调用类方法
3. 设计类方法的原则

2.3.方法重载

1.方法重载的语法规则

满足条件:

- 参数的个数不同
- 参数个数相同,但参数列表中对应的某个参数的类型不同

2.避免重载出现歧义

class Dog {
static void cry(double m,int n) {
System.out.println("小狗");
}
static void cry(int m,double n) {
System.out.println("small dog");
}
}

2.4.this关键字

2.5.包

  • 包语句:
package 包名;
  • 有包名的类的存储目录
package tom.jiafei;
c:\1000>javac tom\jiafei\源文件
  • 运行有包名的主类
c:\1000>java tom.jiafei.主类名

2.5.import语句

  • 引入类库中的类
import java.until.*;(引入java.until包中所有的类)
import java.until.Date;(引入java.until包中的Date类)

2.6.对象数组

使用对象数组,即数组的元素是对象:
Student [] dtu;
dtu = new Student[10];

代码编译及运行调试

  • 代码编译

    20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结

    20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结
  • 代码调试
  1. 实例方法只能通过对象来调用,不能通过类名来调用。当this关键字出现在实例方法中时,this就代表正在调用该方法的当前对象。

    20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结
  • 代码上传
  1. 传到码云必须用git pull20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结
  2. 20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结

其他(感悟、思考等,可选)

我给自己本周的学习打6分,完成了任务,但是练习少,很多代码都是复制过来的。从第四章开始,学习难度逐渐加大,内容量也逐渐增多,需要更耗时更用心,多加练习,之后将更难。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60