本章目录
7.1 理解类和对象
7.1.1 对象
7.1.2 抽象与类
7.1.3 类与对象的关系:
7.2 Java中的类和对象
7.2.1 类的定义
7.2.2 类的成员
7.2.3 实践练习(一)
7.2.4 实践练习(二)
7.3 对象的创建和使用
7.3.1 对象的创建
7.3.2 对象的创建和使用
7.3.3 实践练习
7.4 面向对象
7.4.1 面向对象编程
7.4.2 数据类型终结
7.4.3 构造方法
7.4.4 实践练习
总结:
7.1 理解类和对象 7.1.1 对象
现实世界中的所有具体的事物都可以视为对象
Java中万物皆对象
1、万物皆对象
2、用来模拟现实中的事物
3、可以用计算机的实体来模拟现实中的实体(对象)
4、是一种设计和实现软件系统的思想
在面向对象编程中将对象拥有的特征称之为属性,通常情况下对象具有不同的属性和属性值。
对象还能执行某些造作或具备某些行为能力。例如,zzdmla能执行的操作有:听课、看书、做作业。健壮的唇膏能讲课、编写程序、批阅作业。
对象能够执行的操作或具备的行为能力称为方法,如zzdmla有听课、看书、做作业的方法。
(1)属性——对象具有的各种特征
每个对象的每个属性都拥有特定值
例如:zzdmla的年龄、姓名等
(2)方法——对象执行的操作或行为
对象:用于描述客观事物的一个实体,由一组属性和方法构成
7.1.2 抽象与类
类是具有相同属性和共同行为的一组对象的集合。
每个对象的属性值可以不一样
7.1.3 类与对象的关系:
类是对对象的描述,是创建对象的“模板”,是对象的抽象
对象表示现实世界中某个具体的事物,是类的一个实例,是类的实例化结果
7.2 Java中的类和对象
所有Java程序都以类class为组织单元
关键字class定义自定义的数据类型
7.2.1 类的定义定义类的步骤:定义类----》定义属性----》定义方法
public class 类名 { //定义属性部分 //定义方法部分}语法说明:
(1)访问修饰符是对类的访问范围的一种限定,使用public表示共有。
(2)class是定义类的关键字。
(3)类名也是Java中的标识符,必须满足标识符的命名规范;类名的命名规范中,要求类名首字母大写,且类名简介并富有含义。
示例:定义一个学生类
程序要运行,必须有main方法,它是程序运行的入口,通常将main方法放在一个专门定义的启动类中,main程序入口的格式要满足Java语言的语法规定。
7.2.2 类的成员
成员变量(全局变量):属性用于表示类的特征,它是类的成员的一部分,在Java类的主体中定义变量,描述类所具有的特征(属性),这些变量称为类的成员变量。可以不使用。
局部变量:必须先声明后使用。
public class Engineer { String name; //工程师的姓名 int age; //工程师的年龄 String title; //工程师的职称}成员方法:通过在类中定义方法,描述类所具有的行为,这些方法称为类的成员方法。
说明:
在Java中,定义类使用帕斯卡命名法,定义类的方法和属性名则用驼峰命名法。
帕斯卡命名法:每一个单词的首字母大写。例如:类名:Student、Teacher。
驼峰命名法:第一个单词的首字母小写,后面每个单词的首字母大写。例如:方法名 showInfo、变量名 userName。
示例:编写工程师做项目的方法和显示自己的信息的方法
public class Enginner{ //做项目的方法 public void work( ) { System.out.println(“做项目”); } //显示自己的信息 public void showInfo() {System.out.printf(“我是%s,年龄%d,职称为%s。”,name,age,title); }}在定义类时,属性表示类的特征,一般用“名词”来命名,而方法表示类的行为,一般用“动词”来命名。
7.2.3 实践练习(一) 7.2.4 实践练习(二)
7.3 对象的创建和使用 7.3.1 对象的创建
定义好类后,下面即可根据定义的模板创建对象。
类的作用就是创建对象,由类生成对象,称为类的实例化过程。一个实例也就是一个对象,一个类可以生成多个对象。
类名 对象名 = new 类名( );7.3.2 对象的创建和使用
对象只有在被创建好后才可以使用。
在Java中,要引用对象的属性和方法,需要使用“.”操作符。
使用对象的步骤:
创建对象:类名 对象名 = new 类名();
Enginner enginner1= new Enginner( );引用对象成员:使用“.”进行以下操作
引用类的属性:对象名.属性
引用类的方法:对象名.方法名()
enginner1.name = “艾边成”; //为name属性赋值enginner1.showInfo( ); //调用showInfo( )的方法示例:创建工程师对象并使用。
Engineer engineer1 = new Engineer();System.out.println(" 初始化变量前 :");engineer1.showInfo();System.out.println(" 初始化变量…");engineer1.name = " zzdmla ";engineer1.age = 24;engineer1.title = " 中级软件工程师 ";System.out.println(" 初始化变量后 :");engineer1.showInfo();属性也称为成员变量。
方法内定义的变量为局部变量。
类型
默认值
int
0
double
0.0
char
‘u0000
boolean
false
String
null
7.3.3 实践练习
7.4 面向对象 7.4.1 面向对象编程
面向对象的思想更有利于开发大型程序,具有很多优点:
程序设计是要模拟现实世界,帮助解决现实世界中的问题。对象的属性和方法被封装在类中, 调用者通过对象完成属性和方法的调用,无需关注实现。类作为对象的模板,只需要定义一次,增加了重用性。7.4.2 数据类型终结 Java中的数据类型主要分为以下两类。
基本数据类型:在Java中包含8种基本数据类型,整形(int)、短整型(short)、长整型(long)、字节整数(byte)、字符型(char)、单精度浮点型(float)、双精度浮点型(double)和cbddd类型(boolean)。
引用数据类型:引用数据类型有字符串(String),使用class关键字定义的类都属于引用数据类型。例如我们创建一个汽车Car类,使用“Car c = new Car();”创建出的对象c属于创建的Car类型。
基本数据类型共8种,引用数据类型包含Scanner、Random、String等以及用户自定义的类型。引用数据类型要使用必须创建对象。引用数据类型要创建变量是通过调用构造方法来完成的。7.4.3 构造方法 类名 对象名 = new 类名( );“new 类名 ()”其实就是对构造方法的调用,完成对象的创建。
构造方法语法:
[构造方法访问修饰符] <方法名> ([参数列表]) { [方法体]}示例:定义Cat类,并定义Cat类构造方法
public class Cat { String name;// 名称 int age;// 年龄 String color;// 颜色 /*构造方法 1*/ public Cat(){ } /*构造方法 2*/ public Cat(String n,int a,String c){ name = n; age = a; color = c; }}有参构造方法可以帮助我们在创建对象时就完成属性的赋值。
//调用默认无参构造方法创建对象Cat c1 = new Cat();System.out.printf("c1对象的name,age,color属性分别是%s,%d,%sn",c1.name,c1.age,c1.color);//调用有参构造方法创建对象Cat c2 = new Cat("阳光的铃铛",3,"白色");System.out.printf("c2对象的name,age,color属性分别是%s,%d,%sn",c2.name,c2.age,c2.color);
构造方法与普通方法的区别:
构造方法的名称必须和类名保持一致。构造方法不能有返回值类型。构造方法一般用 public 修饰。构造方法可以完成对类成员变量的初始赋值。7.4.4 实践练习
总结: 对象是具体的实体,具有特征(属性)和行为(方法)。 类是具有相同属性和共同行为的一组对象的集合,对象或实体所拥有的特征在类中称为属性,对象执行的操作称为类的方法 类是抽象的,对象是具体的。 Java中的数据类型主要分为基本数据类型与引用类型。 引用类型对象的创建需要调用构造方法。