第11章 类和对象
一.对象
1. 现实世界中客观存在的任何事物都可以被看做对象。
2. java是一种面向对象的编程语言(Object Oriented Programming Language,OOPL)。
3. 每一个对象都有自己的特征,包括静态特征和动态特征,静态特征可以用某些数据来描 述,动态特征是对象所表现的行为或对象所具有的功能;分别称为对象的属性和方法。
4. 封装(Encapsulation)就是把一个事物包装起来,并尽可能隐藏内部细节。
二.类
1.类就是对象的类型,定义类就是抽取同类实体的共性自定义的一种数据类型。
2.类是多个对象进行综合抽象的结果,是实体对象的概念模型,而一个对象是一个类的实例。
三.java是面向对象的语言
(类是程序的基本单元)
1.java的类模版
语法:
public class (类名){
//定义属性部分
属性1的类型 属性1;
属性2的类型 属性2;
......
属性3的类型 属性3;
//定义方法部分
方法1;
方法2;
......
方法3;
}
2.如何定义类
(1)定义类名
语法:
public class 类名{
}
(2)编写类的属性
(成员变量)
(3)编写类的方法
(成员方法)
语法:
访问修饰符 返回值类型 方法名(){
//方法体
}
注:访问修饰符 限制了访问该方法的范围
返回值类型 是方法执行后返回结果的类型 可以是基本类型或引用类型 骆驼命名法: (camel)第一个单词首字母小写,其后每个单词首字母大写 帕斯卡命名法:(pascal)每个单词首字母都大写
在java中,定义类的属性和方法使用骆驼命名法定义类使用帕斯卡命名法。 示例:
public class School {
String schoolName;//中心名称
int classNumber;//教室数目
int labNumber;//机房数目
//定义北京北大青鸟中心的方法
public void showCenter(){
System.out.println(schoolName+"培训中心\n"+"配备:"+classNumber+"教"+labNumber+"机");
}
}
public class School {
String schoolName;//中心名称
int classNumber;//教室数目
int labNumber;//机房数目
//定义北京北大青鸟中心的方法
public void showCenter(){
System.out.println(schoolName+"培训中心\n"+"配备:"+classNumber+"教"+labNumber+"机");
}
}
3.如何创建和使用对象
(1)类的作用就是创建对象,由类生成对象,称为类的实例化过程。
语法:
类名 对象名=new 类名();
(2)在java中,要引用对象的属性和方法,需要使用"."操作符。
语法:
对象名.属性 //引用对象的属性
对象名.方法名 //引用对象的方法示例:
public class IntialSchool {
public static void main(String[] args) {
School center=new School();
System.out.println("***初始化成员变量前***");
center.showCenter();
center.schoolName="北京北大青鸟";//给schoolname属性赋值
System.out.println("\n***初始化成员变量后***");
center.showCenter();
}
}
注:一个java类中只有一个main()方法。
java数据类型的默认值:
int为0;
double为0.0;
char为'\u0000';
boolean为false;
String为null;
四.面向对象的优点
1.与人类的思维习惯一致;
2.信息隐藏,提高了程序的可维护性和安全性;
3.提高了程序的可重用性。