面向对象的概念
什么是面向对象
在Java中,世界是由类和对象组成的。基于类和对象的编程,设计模式称为面向对象。
面向对象的优点
面向对象的程序设计(Object-Oriented Programming,简称OOP)是当今主流的程序设计规范。OOP思想只关注对象的功能而非其内部的实现细节。
类和对象
什么是类
在Java中,我们把抽取同类实体的共同性自定义为一种数据类型,称之为类。
什么是对象
在Java中,对象就是用来描述客观事物的一个实体,由一组属性和方法构成。
类和对象的关系
- 类是对象的抽象,就是将同一类别物体或概述的属性和行为抽象出来。
- 对象是某一类物体被赋予具体的属性值后的产物,如一个人的年龄是23岁。
- 不同对象之间的属性值可能相等。
- 类是一个模板,拥有一大批同类的物体的共同特征。
- 对象是类的具体实现,对应一个真实存在的物体。
示例:
/**
* 定义类
* */
public class Demo_one {
public static void main(String[] args) {
Demo_two two =new Demo_two();
two.one();
}
}
class Demo_two{
String name = "李老板";
int age = 26;
public void one(){
System.out.println("姓名:"+name);
System.out.println("年龄:"+age);
}
}
注意:需要注意的是一个类里面可以有多个类,但只能有一个public类,而且类名必须要与文件名相一致。
类的创建
类是由属性和方法组成的,属性代表了类的数据,方法是用来操纵属性的。
类的定义
语法:
[访问权限修饰符] class 类名{
类的属性声明;
类的方法声明;
}
类的属性
属性又称成员变量,用于描述对象的特征或状态。
类的方法
方法是类的行为,也称为成员变量。在Java中,必须包含返回值类型、方法名称等语法结构。
语法:
[访问权限修饰符] 返回值类型 方法名称(参数类型1,参数类型2,....){
方法体;
}
定义成员方法需要注意:
- 返回值类型是值方法返回值的数据类型。
- 方法名的定义需要满足标识符命名规范,一般首字母小写,方法名由多个单词组成时,第二个单词及以后的单词首字母大写。
- 每个参数都包括数据类型和变量名二个部分,多个参数之间使用逗号隔开。方法可以分为1.没有参数和返回值的方法。2.有参数但没有返回值的方法。3.既有参数又有返回值的方法。4.方法间的互相调用。
示例:
/**
* 定义方法
* */
public class Demo_one {
public static void main(String[] args) {
Student student = new Student();
student.printStudent();
student.learning(4);
student.working(4.2,400);
student.working2();
}
}
class Student{
public String name = "小明";
public int age = 21;
public String homeTown = "中国";
//没有参数和返回值
public void printStudent(){
System.out.println("学生姓名:"+name+"年龄"+age+"地区"+homeTown);
}
//有参数但没有返回值的方法
public void learning(int course){
System.out.println(name+"学习了"+course+"小时");
}
//有参数、有返回值的方法
public Double working(double pay,int hours){
double totalPay = pay*hours;
System.out.println(name+"学习了"+hours+"小时,得到报酬"+(pay * hours)+"元");
return totalPay;
}
//调用其他方法的方法
public void working2(){
working(4.2,400);
}
}
对象的操作
对象可以通过“.”运算符来调用自己的成员。
创建对象
使用对象前需要先创建。
语法:
类名 对象名 = new 类名();
访问属性
语法:
对象名.属性;
调用方法
语法:
对象名.方法名();