这些是笔者学习Java基础时的笔记,供后来者参考(学习是持之以恒的的事情,一定要坚持哟,切记!切记!!!)
一、面向对象
1.概念:
面向对象是相对于面向过程而言的一种编程思想,它强调的是将功能封装进对象,强调的是具备了功能的对象。面向对象是基于面向过程的。
2.面向对象的特征:
封装、继承和多态。面向对象的编程就是找对象、建立对象和使用对象,并维护对象关系的过程。
3.类与对象的关系
类是对象的抽象,对象是类的具体实现。
使用面向对象的方法编程时,首先要明确被描述对象的属性和行为,对象的属性对应类中的方法,对象的行为对应类中的方法。
4.成员变量和局部变量
<1>.概念:
成员变量:定义在类中,函数体外的变量。
局部变量:定义在函数体内的变量。
<2>.成员变量和局部变量的区别:
1.作用范围
成员变量作用于整个类中。
局部变量作用于函数中,或语句中。
2.在内存中的位置不同
成员变量:在堆内存中,因为对象存在,才在内存中存在。
局部变量:存在栈内存中。
5.匿名对象:
<1>.概念:匿名对象是对象的简化形式。
<2>.匿名对象的两种使用情况:
当对对象的方法只调用一次时,可以用匿名对象来完成,这样书写起来很简单。
可以将匿名对象作为实际参数进行传递。
二、封装
1.概念:是指隐藏对象的属性和实现细节,仅对外提公共访问方式。
2.好处:将内部变化隔离、提高了重用性、提高安全性、便于使用。
3.封装原装
<1>.将不需要对外提供的内容都隐藏起来。
<2>.把属性都隐藏,提供公共方法对其访问。
4.封装的实例:
class person
{
private int age;
public void setAge(int age)
{
if(age>0 && age <130)
this.age = age;
else
System.out,println(“age is not rigth!”);
}
public int getAge()
{
return age;
}
}
特点:
防止外部直接访问类中成员变量,通过定义访问规则,提高代码的健壮性。
一般使用set、get方法设置成员变量的访问规则。
三、构造函数
1.特点:
函数名与类型一致。
不用定义返回值类型。
当一个类中没有定义构造函数时,系统会默认给该类加入一个空的构造函数。当自己定义构造函数之后,系统就不在会添加构造函数。
2.构造函数的作用:给对象进行初始化。
3.构造函数与一般函数的不同
<1>写法上不同。
<2>构造函数在对象一建立就运行,给对象初始化,一般函数在调用后才执行。
<3>构造函数在对象建立时用执行一次,一般函数可多次调用。
4.什么时候定义构造函数?
当分析事物时,该事物存在具备一些特性或行为,那么将这些内容定义在构造函数中。
5.构造代码块:
<1>作用:给所用对象进行初始化。对象一建立就运行,优先于构造函数执行。
<2>和构造函数的区别:
构造代码块是给所用对象进行初始化。而构造函数是给对应对象初始化。
<3>表现形式:
{
构造代码块中要运行的语句。
}
四、this关键字
1.this用于区分局部变量和成员变量同名的情况。
2.this的原理:this代表本类的对象,指向的是正在调用该函数的对象。
3.this的应用:
当定义类中功能时,该函数的内部要调用该函数的对象时,这时用this来表示这个对象。但凡本类功能内部使用了本类对象,都可用this表示。
this还可用于构造函数的相互调用,此时要注意将this调用构造函数要写在第一行。
例子:
Person(String name)
{
this.name = name;
}
Person(String name,int age)
{
this(name);
this.name = name;
}
注意:this语句一定要放在构造函数的第一行。因为初始化要先执行。
网友评论