Java面向目标的封装准则
封装:
浅显了解:在不想让外人看见自己所界说的内容,可是你可以运用(调用),怎样调用呢?经过先设置(set)下特点或许办法内容,然后你有必要获取(get)下才可以调用。
在面向目标编程思维中,不仅把汁液多、糖分多、含有挥发性芳香物质、可以生食等的一起特征放到生果类里,一起也把生果的开花、落果、膨大、老练等一起行为放到生果类里,这样生果类既包含了生果所具有的一起特征,也包含了开花、落果、膨大、老练等一起行为。
当外部需求拜访生果类时,调用生果类对外供给的拜访办法来拜访其一起特征和行为。例如:生果类供给了get办法来拜访其特点(特征),供给了开花、落果、膨大、老练等办法来拜访其行为。一起经过Java关键字public、protected、private(在Java类一节会有详细介绍)设置生果类的拜访权限。
由上面的内容可以看出,Java封装便是把实际国际同类事物的一起特征和行为抽取出来,放到一个新建的类中,并设置类特点(特征)和行为的拜访权限,一起供给外部拜访类特点和行为的办法。
把事物的特点和行为封装在一起,可以对外躲藏内部数据,操控用户对内部数据的修正和拜访,封装也消除了面向进程编程中数据与操作别离所带来的种种问题,提高了程序的可复用性和可维护性。
下面以生果类为事例,详细阐明封装的进程和长处。
发动eclipse,树立Fruits项目。在Fruits项目src目录下新建包com.milihua.fruits,如下图所示:
图 11-4 新建生果类项目
在com.milihua.fruits包下新建FruitManager类,FruitManager类为生果管理类,担任生果种类的添加、删去,以及生果的展现等功能。在新建类时要注意勾选public static void main(String[] args)选项,如下图所示:
在com.milihua.fruits包下新建类Fruits类,Fruits类为生果类,担任生果的创建和展现。生果类封装代码如下:
Fruits类的特点声明为私有的(private),办法声明为公共的(public)。这样,目标可以直接调用类中界说的一切办法,当目标要修正或得到自己特点的时分,就有必要要调用已界说好的专用的办法才干完成。起到了躲藏内部数据,操控用户对内部数据修正和拜访的效果。类的可复用性和可扩展性会在承继或多态一节讲到。
关于面向目标编程而言,需求把握如下几点:
(1)抽象是把同类事物的一起特征抽取出来概括为类,类的详细实例为目标。
(2)封装便是把抽取的事物特点和行为打包到一个类中,并躲藏内部数据和办法的完成进程。
(3)编程时要遵从目标调用办法,办法修正特点。
封装性的表现:
将类的特点私有化(private),一起供给公共(public)的办法来获取(get xxx)和设置(set xxx)此特点的值,且调用时不可以直接运用“目标。特点”。
public class PersonTest {
public staTIc void main(String[] args) {
Person b = new Person();//类的实例化
b.setAge(99);//调用目标的办法
b.setName(“Jack”);
System.out.println(“姓名为:” +b.getName() +“,年纪为:” +b.getAge());
}
}
public class Person {
private int age;//界说特点为私有的
private String name;
public int getAge() {//供给public办法获取特点
return age;
}
public void setAge(int i) {//供给public办法设置特点
if (i 《 0 || i 》 130) {
System.out.println(“年纪不符合标准!”);
}
age = i;
}
public String getName(){//供给public办法获取特点
return name;
}
public void setName(String n){//供给public办法设置特点
name = n;
}
}
关于权限润饰符的运用范围
Java供给的4种权限润饰符,用来润饰类(只能运用缺省、public)及类的内部结构:特点、办法、内部类、结构器