面向对象
一.什么是面向对象
编写应用程序使用模块化的思想
面向过程:划分各种很细小的步骤来完成编程(划分功能完成)
二.类和对象
(1)对象
对象是由属性和方法组成
属性是描述对象的静态方法;方法是描述对象的动态特征
(2)类
类是创建对象的模板,所有的对象都是在类中创建
对象是描述一个客观的实体
对象和类的关系:类是对象的抽象描述,这些对象具有相同的特征和方法;对象是类的具体实例
Java是以类为组织单元,程序运行是以对象来具体实现的
我们写的是类,一旦程序运行就是对象
三.定义类
public class 类名{
//定义属性,属性名符合驼峰式命名
public 数据类型 属性名;
//定义方法,方法名符合驼峰式命名
public 返回值类型 方法名(参数列表:数据类型 参数名){
//方法体
}
}
Java关于返回值的定义
1.有返回值 需要在方法定义时指定返回值的数据类型,用return返回
2.无返回值 将数据类型定义为void
3.参数列表 外部调用该方法时需要传到方法内部进行运算的数据
四.构造函数
是一个特殊的方法,构造方法是用来创建对象的
(1)名字必须与类名一致
(2)不需要定义返回值类型
有参构造;无参构造
任何一个类都自带默认一个无参构造函数
如果创建了一个有参构造,会把无参构造所覆盖
不同的类可以调用别的类
五.this关键字
this是用来指代当前类的实例化对象,通过this可以调用当前类的属性和方法,比如构造函数,可以把外部值赋给当前实例化对象this.id = id;
this可以访问属性,也可以调用方法
方法分为两类:1.构造方法 2.普通方法
在无参构造函数中可以调有参this(),不能在普通方法中使用this
普通方法的调用this.方法(参数)
public class Student {
public int id;
public String name;
//定义属性
//public 数据类型 属性名;
//构造函数
public Student() {
//自己调自己,内存溢出
//this();
//无参可以调有参
// this(3,"王五");
}
public Student(int id,String name) {
// this.id=id;
// this.name=name;
//不可取
//this();
}
//有返回值的方法
public int test1() {
return 20;
}
//定义方法 无需返回值
public void test() {
//调用普通方法
this.test1();
}
}