第一章 面向对象
一、面向对象
1、面向对象和面向过程的区别
面向过程 | 面向对象 | |
---|---|---|
区别 | 事物比较简单,可以用线性的思维来解决 | 事物比较复杂,使用线性的思维无法解决 |
共同点 | 1、都是解决实际问题的一种解决方式 | |
2、两者并非对立关系。 利用面向对象方式解决问题便于把我事物之间的复杂关系,方便分析整个系统。利用面向过程方式处理微观操作。 |
2、java中提供访问控制的原因
(1) 让客户端程序员无法触及他们不应该触及的部分。
(2)允许库设计者可以改变类内部的工作方式而不用担心会影响到客户端程序员。
3、类的四大访问的权限—-public private protected 包访问权限(默认的访问权限)
public :for everyone
包访问权限:类可以访问在同一个包中的其他类成员。
protected:与private相当,区别:继承的类可以访问protected成员,但不能访问private成员。
private:除类的创建者和类的内部方法之外的任何人都不能访问。
4、类的复用(组合、继承)
组合: 将某个类的对象置于一个新类中(<u>在另一个类中new一个其他类的对象</u>) ;**
继承: 概念:覆盖(重写):在继承的父类的方法中做些不同的事。
5、向上转型
导出类------》基类
6、异常处理
异常时一种对象,它从出错地点被抛出,并被专门设计用来处理特定类型错误的相应的“异常处理器”捕获,
异常处理就像是与程序正常执行路径并行的、在错误发生时执行的另一条路径。是另一条完全分离的路径。
7、对象
7.1 引用与对象
String s;//这里的s 只是引用还不是对象。此引用还未指向任何对象。
String s = new String("safd"); //new String("safd")才产生了对象,用s指向
7.2 对象存储位置(5个地方)
寄存器:位于寄存器内部,是最快的存储区。
堆栈:位于通用RAM(随机存储器)中,但是java对象并不存储于其中。
堆:一种通用的内存池(位于RAM中),用于存放所有java对象。
常量存储:存放于程序代码内部。
非RAM存储:
7.3 基本类型
基本类型 | 大小 | 包装器类型 |
---|---|---|
boolean | ----- | Boolean |
char | 2B | Character |
byte | 1B | Byte |
short | 2B | Short |
int | 4B | Integer |
long | 8B | Long |
float | 4B | Float |
double | 8B | Double |
void | —— | Void |
高精度数字:
BigInteger、BidDecimal,二者没有对应的基本类型。
7.4 java解决内存泄漏问题-----垃圾回收器
用来监视用new创建的所有所有对象,并辨别哪些不会再被利用的对象,死后释放这些对象的内存空间,以便供其他新的对象使用。
7.5 类的基本成员的默认值
基本类型 | 默认值 |
---|---|
char | ‘\uoooo’(null) |
boolean | false |
byte | byte(o) |
short | short(o) |
int | 0 |
long | of |
float | 0.0f |
double | 0.0d |
7.6 static 关键字
所修饰的成员和函数可在不用创建对象时用,即:类名.成员 或 类名.函数。
注意:
class StaticTest{
static int i=47;
}
StaticTest st1 = newStaticTest();
StaticTest st2 = newStaticTest();
//st1.i和st2.i指向同一个存储空间,他们具有相同的值47
7.7 关于注释
7.7.1 单行注释 ://
7.7.2:多行注释:(/* sdalfk*/)
7.7.3 文档标签注释://: 内容
(/**内容 */)
网友评论