第四章·2、第五章学习笔记

一、教材学习内容(4.类和对象·2)

1、使用super.方法名可以调用父类的构造方法(包括被子类所隐藏的方法)。

特别地,父类构造方法定义时应注意留一个不带参的构造方法,以防子类省略super。

public class Demo1 {
 
	public static void main(String[] args) {
		SubClass_A sc=new SubClass_A(2,3);
		System.out.println(sc.i);
		System.out.println(sc.j);
 
	}
 
}
class SuperClass_A
{
	public int i=0;
	public int j=0;
	public SuperClass_A()
	{
		j=1;
	}
}
class SubClass_A extends SuperClass_A
{
	public int i;
	SubClass_A(int a,int b)
	{
		super();
		i=b;
	}
}

2、final关键字可以修饰类、成员变量以及局部变量。作用是1)final类不允许被子类重写2)final变量具有常量的属性,且必须在该变量定义时为它赋初值。

3、对象的上转型对象(有点类似接口回调)

特别地,

1)注意区分子类对象和上转型对象。

2)可以将对象的上转型对象强制转换到一个子类对象,此时的对象又具备子类所拥有的属性和功能。

假设A类是B类的父类,

  A a;

   B b=new B();

   a=b;//此时对象a就是b对象的上转型对象
   
   B b=(B)a;//此时上转型对象强制转换成子类对象

3)不可将父类对象的引用赋给子类对象

4)子类若重写了父类的静态(static)方法,那么子类的上转型对象不能调用子类重写的静态方法,只能调用父类的静态方法。

4、继承中的多态性指的是父类的某个方法被其子类重写时,可以产生各自的功能。

5、abstract方法和abstract类(抽象方法、类)

类:1)只允许声明 2)不允许实现抽象方法 3)不允许使用final、static关键字 4)abstract类内可以没有abstract方法

       5)abstract类不能用new运算符创建对象(子类必须重写抽象方法) 6)abstract类的对象作上转型对象符合上转型对象属性

       7)抽象类可以抽象出重要的行为标准,而不具有探讨行为的实现细节

6、面对抽象编程:是指当设计某种重要的类时,不让该类面向具体的类,而是面向抽象类。

目的:为了应对用户需求的变化,将某个类中经常因需求变化而需要改动的代码从该类中分离出去。

核心:让类中每种可能的变化对应地交给抽象类的一个子类去负责。

7、开-闭原则   对扩展开放,对修改关闭。

二、教材学习中的问题和解决过程

暂无

三、代码调试过程中的问题

暂无

四、学习思考和感悟

暂无

五、学习进度条

   代码函数(新增/积累)  博客量(新增/积累)   学习时间(新增/积累) 重要成长
  目标              7000行              30篇                400h  
第五周            137/1397               1/6                5/51  

猜你喜欢

转载自blog.csdn.net/Huangxu_MIKU/article/details/83246678