-- Java面向对象编程知识点总结。
一:面向对象概述。
面向对象:使复杂的事物变得简单,使程序的开发人员从程序的被动者变为了程序的指挥者。
类是对现实世界事物的抽象化描述。
对象是类的实实在在的实体。
二.类的实现过程:
例如以人为例,先分析人具有的静态属性(属性)和动态行为(行为)。
人:属性有:姓名、性别、肤色、国籍、年龄、学历等。
行为有:编程、学习、吃饭、睡觉、打篮球等。
1.从以上属性和行为中抽取你关心或者说是需要用的属性和行为。
V
V
VVVV
Class 人{
姓名
性别
年龄
学习();
编程();
} 使用Java程序实现:
v
v
VVVV
classPerson {
String name;
String sexy;
Int age;
void learn(){}
void Coding(){}
}
2.创建对象的过程(也称作类的实例化过程):
class PersonDemo{
publicstatic void main (String[] args){
Personman = new Person();//实例化对象使用new关键字
//其实是在内存的堆内存中开辟对象的存储空间。
//下面是对实例化的对象进行详细的描述和使用。
Man.name= “xiaoqiang”//调用man对象中的属性
man.age = 20;
man.sexy= “male”;
man.learn();//调用man中的方法行为。
man.coding();
}
}
创建对象的过程如下图所示:
三:类中的元素:
成员变量:作用于整个类中(存在于堆内存中因对象的存在而存在)。
局部变量:作用于函数中或符合语句中,存在于栈内存中。
匿名对象: Person man = new Person();可以写为:new Person().age = 20;
匿名对象的使用方法1:调用属性是无意义的,单调用方法只调用一次时可以使用,当对象调用多个方法时,必须声明引用类型即句柄。
使用方法2:可以将匿名对象作为实参进行传递。
三:封装:
封装是指隐藏对象的属性和方法,仅提供公共的访问方式。
1.封装的优点:1.提高了代码的重用性。2.将变化隔离。3.提供了安全性便于使用。
封装的原则:1.将不需要对外提供的内容隐藏起来。2.提供公共的访问方式对其进行访问。
例如:某大型汽车零配件公司建立了的网络交易平台。
Class零件类{
零件价格;
零件销量;
零件的购买方;
}
B厂客户可以从此类中获取零件的价格、零件的销量,当客户获得某种型号的零件大部分被A厂客户购买(B厂客户的禁止对手)时,B厂有可能停止购买,因为与竞争对手的货源相同,这时如果该公司对该类中的零件的购买方进行私有化(private)也就是进行封装,则就不会出现上述情况。但某些客户是需要通过交易平台对购买方的
信息进行获得,比如公司的老板有获得购方的权限,此时就要建立一个共有的(public)方法给老板,让老板可以获得这个属性。
Class零件类{
Public int零件价格;
Public int零件销量;
Private String零件的购买方;
public String bossCan (){
return 零件的购买方;
}
}
2.在类中一个私有的成员变量通常会对应两个方法:1.设置器2.访问器。
如:class LearnDemo{
privateint age;
publicvoid setAge(int a){
age = a;
}
publicvoid getAge(){
return age;
}
}
3.构造函数: 1.构造函数与类名一致。2.不需要定义返回值。3.不可以写return语句。
对象在建立后首相调用对象的构造函数进行初始化,假如当一个类中没有定义构造函数,系认会默认为该类添加构造函数。
构造函数的作用:构造函数为对象初始化(原因是某些对象在一出现后就具有某些属性。比如:中国人生下来就是黄色的皮肤)。
构造函数的重载:因为某些对象需要初始化多种属性。
重载的方法:函数名必须相同、参数类型和参数个数不能彼此间相同
构造函数与普通函数的区别:1.构造函数在对象一建立时就首先运行,只能运行一次。2.一般函数:调用时执行,并可以执行多次。
|