首页 > 编程语言 > 详细

【自学java笔记#第十六天#】封装的实际意义

时间:2020-03-18 20:29:41      阅读:50      评论:0      收藏:0      [点我收藏+]

选用教材:《Java核心技术卷一》

第四章 对象与类

一、几个难理解的知识点:

1、隐式参数与显式参数

例如:

public void raiseSalary(double bypercent)//将工资多提高几个百分点
{
    double raise=salary*bypercent/100;
    salary+=raise;     
}

显式参数:是指raiseSalary方法中,括号里的bypercent。也就是我们能看到的参数。

隐式参数:raiseSalary方法实际上包含在Employee类中,假设Employee类构造的对象是数组元素staff[1],那么这里的隐式参数指的就是staff[1]。

因为salary是satff[1]调用的(staff[1].salary)。

2、可变类与不可变类、可变对象与不可变对象

Date类是一个可变类,因为它包含了一个settime方法,可以对对象进行更改;String类是一个不可变类,因为这个类里没有可以更改对象状态的方法。

可变对象与不可变对象大致上和类是一样的道理。

3、一般常量/实例字段与静态常量

常量即是用final修饰的变量。静态常量比一般常量多了一个static修饰符,例:static final int name。

二者的相同点是:都无法再改变它们的值。

二者的区别是:一般常量需要通过对象来调用它,静态常量则无需通过对象来调用。

4、静态方法和非静态方法

非静态方法需要通过对象来调用,静态方法则不需要。也就是说静态方法只有显式参数,没有隐式参数。

5、构造器与工厂方法

因为构造器名必须与类名相同,所有有时很难读得懂构造器的功能。比如新建一个名为Date的构造器,它的参数可以是1位或者是多位的。只有读到程序的其他说明部分,才知道究竟是新建了一个什么样的构造器。

但是工厂方法就可以用上各种各样的名字,给程序增加了可读性。

 

【自学java笔记#第十六天#】封装的实际意义

原文:https://www.cnblogs.com/yizhinailu/p/12519879.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!