java第四课_封装,私有,构造函数
2013-03-27 17:50
190 查看
1 封装
封装就是将属性私有化,提供公有的方法访问私有的属性。
*实现封装的步骤:
(1)修改属性的可见性来限制对属性的访问。
(2)为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。
(3)在赋值和取值方法中,加入对属性的存取限制。
**为了实现良好的封装性,我们通常将类的成员变量声明为private,再通过
public的方法来对这个变量进行访问。对一个变量的操作,一般都有读取和
赋值操作,我们分别定义两个方法来实现这两种操作,一个是getXxx()(Xxx
表示要访问的成员变量的名字),用来读取这个成员变量操作,另外一个是
setXxx()用来对这个成员变量赋值。
**如果外面的程序可以随意修改一个类的成员变量,会造成不可预料的程序错误,
就象一个人的身高,不能被外部随意修改,只能通过各种摄取营养的方法去修
改这个属性。
public class AccpTeacher{
private String name;
private int age;
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public int getAge(){
return name;
}
public void setName(String age){
if(age<22){
System.out.println("年龄不符合,太小!");
}else{
this.age = age;
}
}
}
****封装的优点:
(1)隐藏类的实现细节;
(2)让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制
逻辑,限制对属性的不合理操作;
(3)便于修改,增强代码的可维护性;
---------------------------------------------------
构造方法的特征
(1)它具有与类相同的名称;
(2)它不含返回值;
(3)它不能在方法中用return语句返回一个值
##注意:在构造方法里不含返回值的概念是不同于“void”的,在定义构造方法
时加了“void”,结果这个方法就不再被自动调用了!
**通过调用带参数的构造方法,在创建对象时,一并完成了对象成员的初始化
工作,简化了对象初始化的代码。
构造函数直接的互相调用,this语句只能定义在构造函数第一行。
This关键字:那个对象在调用this所在函数,this就代表那个对象。
当本类功能中调用了本类对象,就用this表示。
封装就是将属性私有化,提供公有的方法访问私有的属性。
*实现封装的步骤:
(1)修改属性的可见性来限制对属性的访问。
(2)为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。
(3)在赋值和取值方法中,加入对属性的存取限制。
**为了实现良好的封装性,我们通常将类的成员变量声明为private,再通过
public的方法来对这个变量进行访问。对一个变量的操作,一般都有读取和
赋值操作,我们分别定义两个方法来实现这两种操作,一个是getXxx()(Xxx
表示要访问的成员变量的名字),用来读取这个成员变量操作,另外一个是
setXxx()用来对这个成员变量赋值。
**如果外面的程序可以随意修改一个类的成员变量,会造成不可预料的程序错误,
就象一个人的身高,不能被外部随意修改,只能通过各种摄取营养的方法去修
改这个属性。
public class AccpTeacher{
private String name;
private int age;
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public int getAge(){
return name;
}
public void setName(String age){
if(age<22){
System.out.println("年龄不符合,太小!");
}else{
this.age = age;
}
}
}
****封装的优点:
(1)隐藏类的实现细节;
(2)让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制
逻辑,限制对属性的不合理操作;
(3)便于修改,增强代码的可维护性;
---------------------------------------------------
构造方法的特征
(1)它具有与类相同的名称;
(2)它不含返回值;
(3)它不能在方法中用return语句返回一个值
##注意:在构造方法里不含返回值的概念是不同于“void”的,在定义构造方法
时加了“void”,结果这个方法就不再被自动调用了!
**通过调用带参数的构造方法,在创建对象时,一并完成了对象成员的初始化
工作,简化了对象初始化的代码。
构造函数直接的互相调用,this语句只能定义在构造函数第一行。
This关键字:那个对象在调用this所在函数,this就代表那个对象。
当本类功能中调用了本类对象,就用this表示。
相关文章推荐
- Java:【面向对象:类的定义,静态变量,成员变量,构造函数,封装与私有,this】
- JAVA基础第五天学习日记_面向对象开发思想、匿名对象、封装、私有、构造函数
- JAVA 封装、构造函数、this关键字 day7
- JAVA面向对象知识点总结(2)—封装、构造函数、构造代码块、this关键字
- Java 基础入门随笔(7) JavaSE版——面向对象定义、特征:封装、构造函数
- 黑马程序员——Java基础---面向对象(面向对象,类,对象,匿名对象,封装,构造函数,构造代码块,this,static,main,帮助文档,静态代码块,单例)
- 黑马程序员_Java基础[8]_封装、构造函数、this
- 【Java】将构造函数声明为私有有什么作用?
- Java利用反射访问私有构造函数的例子
- 07_Java基础_堆栈、面向对象/过程、封装/构造函数
- 黑马程序员 JAVA初级-面向对象 匿名对象、封装、构造函数、构造代码块、this
- Java学习第6天:面向对象(4)封装和私有
- JAVA基础知识点(二)--封装,匿名,构造函数、代码块
- Java基础05:面向对象;类与对象;匿名对象;成员变量;局部变量;封装;构造函数
- 在java类中,是先执行类的构造函数还是先执行类的私有非静态变量
- 黑马程序员_Java基础_面向对象,封装,继承,单例设计模式,构造函数,构造代码块
- 程序员面试金典: 9.14 Java 14.1 从继承的角度来看,将构造函数声明为私有会有何作用?
- Java基础(面向对象一——理解、匿名函数、封装、构造函数和this关键字的使用)
- Java 私有构造函数的应用
- JAVA 理解封装的概念,private私有的,public公有的