day9


1. 类和对象

类:

类是具备某些共同特征的实体的集合,是对所具有相同特征实体的抽象,例如学生类,动物类,员工类.

对象:

对象是类的实例,简单的认为对象就是类中具体的个体.

example:

动物类是一个类,而猫,狗就是动物类的对象.

类 = 模板

创建对象 = 复制模板

在Java中一切皆对象

通常将对象划分为两个部分

  1. 动态部分(动态方法)

  2. 静态部分(成员变量)

    成员变量被称为属性

Java中调用方法的三种方式

  1. 使用static修饰的方法使用类名.方法名调用

    Test.print()

  2. 没有使用static修饰的方法使用对象名.方法名调用

    Test t1 = new Test(); t1.print();

  3. 使用new关键字来调用构造方法.

    new Test();

2. 设计类

/**
学生信息类
*/
public class Student
    /**
    id = 学号
    age = 
    */成员变量
    int id;
    int age;
    long phoneNumber;
    String name;
    String major;

    //成员方法
    void print(){
        System.out.println("print方法被调用");
    }    

类书写规范:

  1. 类名首字母大写,驼峰命名法,见名知意.
  2. 方法名首字母小写,驼峰命名法,见名知意.
  3. 类和成员变量上必须写文档注释

2.1 修饰符

2.1.1 类修饰符

  • public: 将一个类声明为公公了类,他可以被任何对象访问,一个程序的主类必须是公共类.
  • abstract: 将一个类声明为抽象类,
  • final: 将一个类声明为最终类,不能被其他类继承.
  • 不写: 默认修饰符,只有在相同包中的对象才能使用.

3. 创建对象和成员变量赋值取值

3.1 创建对象

//语法
//类名 对象名 = new 类名();
//example:
public class Student{
    public static void main(String[] args){
        Student student = new Student();
    }
}

3.2 给对象成员变量赋值

//给成员变量赋值语法:
public class Student{
    public static void main(String[] args){
        Student student = new Student();
        student.name = "张三";
        student.age = "22";
    }
}

3.3 对象取值和对象调用实例方法

public class Student{
    public static void main(String[] args){
        Student student = new Student();
        student.name = "张三";
        student.age = "22";
        System.out.println(student.name);
        System.out.println(student.age);
        Student.print();
    }
}

4. 构造方法(Construction Method)

new Student(); //创建一个学生类对象

该代码本质是调用Student类中的无参构造方法

4.1 构造方法的概念

  1. 构造方法的结构和普通结构类似,但是和普通方法完全不同
  2. 构造方法也是方法,构造方法会执行并完成相应功能
  3. 构造方法是一个代码块,和变量,方法一样都是类的成员之一
  4. 构造方法存在于类的结构中

4.2 构造方法语法

  1. 构造方法的名字和类名完全一致,
  2. 构造方法没有返回值(void 也不行)
  3. 构造方法不能返回任何的值
  4. 构造方法也有修饰符和形参列表
  5. 构造方法必须有方法体
  6. 构造方法不能访问任何有非访问性质的修饰符如 static final synchronized abstract 都不能修饰构造方法

new Student() 既是Student对象,又是Student的无参构造方法

4.3 构造方法特点

  1. 每个类中都至少有一个构造方法
  2. 如果没有声明构造方法,那么有一个默认的无参的构造方法
  3. 如果声明了一个构造方法,默认的无参的的构造方法就不存在了

4.4 构造方法的作用

在创建对象的同时给对象的成员变量赋值

//设计类语法
public class 类名{
    成员变量
    构造方法(有参,无参)
    方法
}
//example:
public class User{
    String name;
    int age;
    public User(){
        System.out.println("User无参构造...");
    }
    public User(String name, int age){
        this.name = name;
        this.age = age;
        System.out.println("这是User类的有参构造方法")
    }
}

4.5 构造方法注意事项

  1. 普通方法不要和类名一致

  2. 普通方法和构造方法是不同的两种结构

    1. 普通方法的调用

      1. 类名.方法名() 有static关键字修饰

      2. 对象名.方法名()

      3. 方法名 同一个类中都要有或都没有static关键字修饰

    2. 构造方法的调用

      无参构造方法 new 类名();

      有参构造方法 new 类名(参数);

4.6 匿名对象

匿名对象:
没有使用变量名接收的对象,只能使用一次;
作用:
1.作为实际参数传递
2.作为返回值返回


文章作者:
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 !
 上一篇
day10 day10
1. 封装(Encapsulation)1.1 封装在面向对象程序设计方法中,封装是指一种将抽象性函式接口的实现细节部分包装,隐藏起来的方法. 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问. 要访问该类的代码
2020-10-25
下一篇 
day8 day8
1. 方法参数传递1.1 概念在使用方法时,传入值或者变量,传递的是:值 1.2 值传递 Java的参数传递,不管是基本数据类型还是引用数据类型,都是按值传递,没有引用传递. 基本数据类型传递的是值本身 引用数据类型传递的是变量在堆中的
2020-10-25
  目录