您的位置:首页 > 编程语言 > Java开发

[java语法]基本语法(5) 面向对象--基本概念

2014-09-04 11:40 363 查看
面向对象的概念
1、对象和其方法是主语和谓语的关系,重点集中在主题/对象(主语)上。
2、封装性是面向对象的根源和最根本的属性。
3、是对某一类事物的描述,是抽象的、概念上的定义;对象(Object)是类(Class)的一个实例(Instance)。

Java中类与对象
1、定义类就是定义类的属性与行为(方法)。
2、类定义的基本格式:
修饰符 class 类名
{
类的属性
类的方法
}
3、如果一个方法中有与类的成员变量同名的局部变量,该方法中对这个变量名的访问是局部变量,而不是成员变量。
4、Java中比较两个对象可以用“==”运算符和equals()方法。“==”操作符用于比较两个变量的值(对象的内存地址)是否相等,equals()方法用于比较两个对象的内容是否一致。
5、匿名对象:创建完对象,在调用该对象的方法时,可以不定义对象的句柄,而直接调用这个对象的方法。
使用匿名对象的情况:a.该对象只需进行一次方法调用;b.将匿名对象作为实参传递给一个函数调用。
6、类的封装:将类的成员变量声明为private,再通过public方法来对这个变量进行访问。
7、在进行程序的详细设计时,应尽量避免一个模块直接操作另一个模块的数据,模块设计应追求强内聚、弱耦合,许多功能尽量在类的内部完成,只提供给外部尽量少的方法调用。
8、构造函数
a.构造函数的作用:为类的成员变量完成初始化工作。
b.构造函数的重载。Java会根据构造类的对象时传递的参数,自动选择相应的构造方法。
9、this引用句柄。
作用:
a.增强程序的可读性。
b.把当前对象作为作为一个参数传递给其他方法和构造方法。
10、垃圾回收:
a.finalize()方法。finalize()方法的作用类似于C++中的析构方法,其是在对象已变成垃圾即将从内存中释放前调用(不是在对象变成垃圾前调用)。这并不是一个可靠的机制
b.System.gc()。这个方法可以强制启动垃圾回收器来回收垃圾。

函数的参数传递
1、基本类型的变量作为实参传递,传递的是该数据的值本身,变量并不会改变。
2、引用类型(类、数组,String类除外)的变量作为实参传递,传递的是对象的引用(句柄),而非对象本身,通过方法调用可以改变对象的内容。
3、基本类型的变量作为方法参数传递,怎样在方法体内改变其值?待查
4、可变参数 待查

static关键字
1、静态变量。用static标识符修饰,在类被被载入时创建。访问静态变量不需要产生类的实例对象。
注:不能把方法体内的变量声明为静态。
2、静态方法。用static标识符修饰。可以用类名或类的实例对象(待考证)来访问,也可以在类的非静态方法中访问。
a.静态方法不能以任何方式引用this和super关键字。
b.在静态方法里只能直接调用同类中的其他静态成员(变量和方法),而不能直接访问类中的非静态成员。
3、静态代码块(static block):
class A
{
static
{
//静态代码块
}
//……
}
静态代码块当类被载入时执行,且只被执行一次,其常用来进行类属性的初始化。
注:类是在第一次被使用时才被装载。
4、单态设计模式
所谓类的单态设计模式,就是保证在整个软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。
具体实现:将类的构造方法的访问权限设置为private,在类的外部只能调用该类的某个静态方法以返回类的内部创建的对象,而指向该对象的变量也必须是静态的。

内部类(略)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: