Java基础概念

起源
计算机革命起源于机器,编程语言的产生也始于对机器的模仿。

抽象过程
所有编程语言都提供抽象机制,我们知道计算机只能识别11001110这样的二进制码,汇编语言是对底层机器的轻微抽象,然后出现的“命令式”语言(C语言,FORTRAN,BASIC)都是对汇编语言的抽象,更高级的编程语言又是对低级的编程语言的抽象。

万物皆为对象
所有我们可以看到的,摸到的事物,都是对象,对象具有状态、行为、标识,程序是对象的集合,通过对象来发送消息,调用方法。

UML
UML(Unified Modelling Language,统一建模语言),每个类都用一个方框表示,类名在方框顶部,数据成员在方框的中间(通常省略),方法在方框的底部,如果只是关心类型,那么方框底部甚至不需要给出。

服务
将对象当做“服务提供者”,这是通常的做法,有助于提供对象的内聚性,软件设计的基本质量要求就是高内聚

访问权限
public公共的,任何人可以访问
private私有的,类中看可以访问
protected受保护的,类及其子类可以访问
package(default)默认的,包访问权限

代码复用
组合:使用现有类合成新的类,has-a的关系,比如汽车拥有引擎,如果组合是动态的那么就是聚合
继承:使用现有类扩展得到新的类,is-a的关系,比如Circle是Shape

组合,用实心菱形表示关系
组合
继承,用空心向上的三角形表示关系
继承
多态

void doSomething(Shape shape){
	shape.erase();
	shape.draw();
}

根据传入的Shape不同,程序会有多种不同的执行结果,但是代码只有一份,这就是多态。
Java能实现多态的原因是面向对象编程的语言使用了后期绑定的概念,当对象发送消息时,被调用的代码到运行时才能确定,编译器确保被调用方法存在并做类型检查(无法提供类型检查的语言被叫做弱类型语言),但是并不知道被执行的确切代码。
Java通过一段特殊代码使用对象中存储的信息来计算方法的地址(以后会介绍),默认情况,Java的方法是动态绑定的。

单继承
在Java中,所有类的父类是Object,因为所有对象有共同的父类,带来2点优点:
1、所有对象都可以很容易在堆上创建
2、单根继承结构使垃圾回收的实现变得容易很多,垃圾回收是Java的一大特点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值