1.5—1.8java学习周记

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6


第二周感悟

由于备战期末考试,闭组三周,对Java的学习进度造成了一定的影响,当自己再次接触时,发现之前学的东西基本上忘记的差不多了,同时感受到需要不断对学习过的知识进行回顾强化才行,本周学习的类与对象,成员变量,方法,继承等内容,学起来也是有一定的难度。尽管说从一定程度上类与对象与C语言中的结构体比较相似,但是还是有所不同。

疑难问题总结

类与对象的理解

类是对具有​​属性与行为​​的事物的抽象化。比如:手机这个类,它的属性有:品牌、价格、尺寸等,它的行为也就是它能执行的操作有:打电话,玩游戏等。

类是对事物的一种描述,对象则是具体存在的事物。

在类中属性通过成员变量(变量)来体现,行为通过成员方法(函数)来体现。

public class Student {
//成员变量
String name;
int age;
//成员方法
public void study() {
System.out.println("好好学习,天天向上");
}
public void doHomework() {
System.out.println("键盘敲烂,月薪过万");
}
}
public class StudentDemo {
public static void main(String[] args) {
//创建对象
Student s = new Student();
//使用对象
System.out.println(s.name + "," + s.age);
s.name = "李华";
s.age = 30;
System.out.println(s.name + "," + s.age);
//调用方法
s.study();
s.doHomework();
}
}

this关键字

用于区分局部变量和成员变量重名的问题

方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,带this修饰的变量指的是成员变量
方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量

继承

子类不能继承父类的构造方法。子类可以继承父类的私有成员(成员变量,方法),只是子类无法直接访问而已,可以通过getter/setter方法访问父类的private成员变量。

子父类中出现了同名的成员变量时,子类会优先访问自己对象中的成员变量。

使用​​super​​​关键字解决问题。但是应注意:​​super代表的是父类对象的引用,this代表的是当前对象的引用。​

class Fu {
// Fu中的成员变量
int num = 5;
}
class Zi extends Fu {
// Zi中的成员变量
int num = 6;
public void show() {
int num = 1;
// 访问方法中的num
System.out.println("method num=" + num);
// 访问子类中的num
System.out.println("Zi num=" + this.num);
// 访问父类中的num
System.out.println("Fu num=" + super.num);
}
}

super和this

  • 子类的每个构造方法中均有默认的super(),调用父类的空参构造。手动调用父类构造会覆盖默认的super()。
  • super() 和 this() 都必须是在构造方法的第一行,所以不能同时出现。
  • super(…)和this(…)是根据参数去确定调用父类哪个构造方法的。

下周目标




总结一下子,必须要及时复习相关知识,建立起知识网络,将知识连接起来,否则真的是学了这个忘那个。希望自己能利用好假期这段时间吧!


阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Java