ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

JAVA第三周学习感悟

JAVA第三周学习感悟



加入未来软件工作室第三周主要学习类与对象、成员变量与方法、继承、抽象类与接口这些面向对象核心内容。从之前的数组过渡到面向对象编程,思维模式发生很大转变,难度也有所提升。

本周学习内容回顾

1.类与对象

这是面向对象的入门内容,明白了类是事物的抽象模板,对象是类的具体实例。学习了类的定义方式,掌握使用new关键字创建对象,通过对象调用成员变量与成员方法。同时区分了成员变量和局部变量,二者在作用范围、存储位置以及默认值上都有区别。

成员变量:写在类中,方法外面(堆内存)

局部变量:写在方法内,方法参数,代码块内部(栈内存)

such as:

public class Demo {
// 成员变量
int num;

public void test(){
// 局部变量
int a;

// System.out.println(a); //报错!局部变量没有默认值,没赋值不能用
a = 10;
System.out.println(num); //成员变量,不赋值也可以输出默认值0
}
}

刚开始练习时经常出现忘记new对象就直接调用方法的问题,会触发相关报错,通过反复编写Demo练习,慢慢理解类和对象之间模板与实例的关系。

2.成员变量与方法

这部分知识点比较零碎,也是学习继承的前置基础。学习了public、private访问修饰符,理解封装思想,private私有成员无法在外部直接访问,需要提供get、set方法进行操作。认识static静态成员,静态属于类,可以直接使用类名调用,静态不能直接访问非静态内容。


掌握构造方法,构造方法名和类名一致,没有返回值,用于对象初始化;如果手动编写有参构造,默认的无参构造就会消失。分清方法重载和方法重写,重载发生在同一个类当中,方法名相同参数列表不同,和返回值无关;重写发生在父子继承关系当中,子类对父类方法进行改写。

3.继承、抽象类

这是本周学习难度最大的模块,涉及封装、继承、多态面向对象三大特性。学习extends继承,Java只支持单继承,借助super关键字访问父类成员,利用继承实现代码复用。


下一步学习

学习abstract抽象类 抽象类中可以包含没有方法体的抽象方法,抽象类不能直接实例化对象,子类需要实现全部抽象方法,否则子类同样需要定义为抽象类。
了解interface接口 使用implements实现接口,一个类可以实现多个接口,弥补Java单继承的不足。区分抽象类和接口,抽象类可以拥有普通变量与构造方法,接口内的变量默认为public static final常量。尝试用面向对象的思路编写代码,思考通放在父类,特有功能交给子类去实现。

知识点未掌握:

1.String不可被继承

2. 一个类只能有一个父类

3.一个类可以同时implements多个接口

4.一个实现了接口的类,不一定必须重写接口内部的抽象方法

小结
第三周最大的难点就是从面向过程思维切换到面向对象思维。语法可以随时查阅文档,但是面向对象的设计思路必须靠多敲代码积累。虽然概念绕,写代码经常出现bug,但是每解决一个问题,对Java的理解就更进一步。

返回列表