写在前面
这一章作者讲了一些很基础的知识。其实没有必要细看,不过有一些概念在这里还是比较重要的。你自己知道大概是什么意思,但是不知道标准的解释。今天我们来看一哈。
1.12 编程方式
这里作者把所有四种编程结构都介绍了一下。
-
无结构编程
就是没有任何结构。直接就一个 main() 里面开始写,这样肯定有很多重复调用的代码就要复制多份。
无结构 -
过程式的编程
所谓过程式,在一个 main() 函数之外构建一些 例程 procedure,调用例程,之后再把控制权返回给 main()。有一定的结构。
过程式 -
模块式的编程
就是说,把相近的例程封装成为模块,然后通过调用模块来搞定
模块式 -
面向对象的编程OOP
OOP的重点在于 对象Object 和 数据 Data。一般来说,首先要做的就是确定各个对象之间的关系,定义每个对象的数据,操作这些对象的方法。
OOP
如上图,可以看到这里每两个对象之间都是可以交互的。
OOP同时需要保持3个特性:继承、封装、多态。
- 继承
- 多态
同一实体可以表现出不同的形式。即一个接口可以由多种方法实现。
举一个现实生活的例子,别人邀请你爸去参加婚礼,结果你或者你妹妹去了,也是可以的。对应到程序中,有一个求2数之和的接口add2(),这时候你输入两个 int / 两个 float/ 两个其他类型的数,都是可以调用这个接口的。也就是说,多态的存在允许我们定义3个版本的接口。
多态又分为 编译时多态、运行时多态。
编译时多态:比如重载
// 重载:编译时多态
class Father{
public void say(){
System.out.println("hello");
}
public void say(String s){
System.out.println(s);
}
}
运行时多态:比如重写
class Father(){
public void say(){
System.out.println("hello");
}
}
class Son extends Father{
@Override
public void say(){
System.out.println("This is Son saying hello");
}
}
// 重写:运行时多态
- 封装
就是说可以通过一定的封装格式,将某些方法和数据对外不可见这种的。
网友评论