面向对象

6.1类

类定义了通用于一个特定种类的所有对象的属性(变量)和行为(方法)。

- 类 里面只有 属性 和 方法。
  • 首先声明属性:String name;

变量类型 属性名 【= 变量初始值】

  • 然后声明方法:public void eat(){}

返回值类型 方法名(形式参数列表){
//方法体
}

  • 方法体:
    方法可以返回一个值。返回值类型是方法要返回的值的数据类型,例如可以是int,这时要用到
    return语句,例如return num2。若方法不返回值,则返回值类型为关键字void。除构造方法外,
    所有的方法都要求有返回值类型
  • 下面我们对方法的结构进行详细介绍:
  1. 方法头指定方法的修饰符、返回值类型、方法名和参数。
  2. 修饰符是可选的,它指定了方法的属性并且告诉编译器该方法可以如何调用。
  3. 方法可以返回一个值。返回值类型是方法要返回的值的数据类型,例如可以是int,这时要用到
    return语句,例如return num2。若方法不返回值,则返回值类型为关键字void。除构造方法外,
    所有的方法都要求有返回值类型。
  4. 方法可以有一个参数列表,按方法的规范称为形式参数。当方法被调用时,形式参数用变量或数据
    替换,这些变量或数据称为实际参数。参数是可选的。
  5. 方法体包括一个定义方法做什么的语句集合。

创建对象(test)

  • 1.通过一个类,实例化出person类的一个对象,对象名为张三。
Person zhangsan = new Person();
  • 2.给对象属性赋值: 对象名.属性名 = 值
        zhangsan.name = "张三";
        zhangsan.sex = '男';
        zhangsan.age = 20;

        System.out.println(zhangsan.name);
        System.out.println(zhangsan.sex);
        System.out.println(zhangsan.age);
  • 3.调用方法: 对象名.方法名()
        zhangsan.eat();
        zhangsan.sleep();

6.2.2构造方法

要学习Java语言,必须理解构造方法(Constructor)。构造方法是一种特殊的方法,利用构造方法能
够初始化对象的属性,构造方法必须与定义它的类有完全相同的名字。
每次在创建实例变量时,对类中的所有变量都要初始化是很乏味的。如果能够在创建对象的同时就对所
有属性都进行了初始化就方便多了,这种自动的初始化是通过使用构造方法来完成的。

[修饰符]    类名  (参数列表){
                 //方法体
}
  • 构造方法的特点如下:
  1. 具有与类相同的名称
  2. 不含返回值类型
  3. 不能在方法中用return语句返回一个值
  4. 一般访问权限为public
  • 构造方法的作用的作用如下:
  1. 完成对象的创建,即完成对象的实例化
  2. 一般使用构造方法来完成对属性的初始化
例6.3 定义带构造方法的Person类
public class Person {
String name;
int age;
String sex;  
//计算器
static int count = 0;
/*
* 有参的构造方法
*/
public Person(String _name, int _age, String _sex) {
  count++;
name = _name;
age = _age;
sex = _sex;
}
public Person() {
 count++;
}
public void getInfo() {
System.out.println("The person's name is " + name + ",age is " + age
+ " and the sex is " + sex);
}
public void sayHello() {
System.out.println(count + ",Hello everybody");
}
}

6.2.3创建对象

1.声明对象的语法结构

类名.对象名;
int age;
String name;

2.创建对象

对象名 = new 构造方法名
a1 = new Employee(“小明”,29,3000)

3.声明并创建对象
对象的声明和创建可以一步完成

类名 对象名 = new 构造器
Employee zhang = new Employee();

4.对象的使用
格式为:
对象名.属性名;
对象名.方法名(实际参数表);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。