2021年10月13日 23:41 __ _ _ _ _

文章配图

Action speak louder than words!

文章配图

昨天我们说到Java的面向对象,那么在程序中我们该如何去创建和使用这个对象呢? 在使用Java对象时我们又该注意些什么呢?

文章配图

目录:

  1. Java类和对象的关系

  2. Java对象和构造函数

一.Java类和对象之间的关系Java的对象和类,我们可以简单理解为** 对象是由属性和行为构成的 ,既然有属性也就会产生数据。这里我们可以将 类理解为 ** 用于描述一类对象的行为和状态 ,即把 类可以看做一个模板,这个模板将会包括一些关于对象的行为或状态。

也就是说我们在Java程序中 想要创建一个对象,必须得先有类,才会有对象。 ** 格式: ** 类名 对象名=new 类名() ; person p=new Person();

当我们在创建一个类后,我们可以在类中创建一个对象,那么在创建对象时必然会使用到的一个 new关键字,Java程序员有句俗语叫**
找不到对象就new一个嘛
文章配图
。 ** ** Java对象与new关键字 **

  • new关键字表示创建一个对象;

  • new关键字表示实例化对象;

  • new关键字表示申请内存空间。

二.java对象和构造函数上面说完Java中的对象和类,那么我们在创建完对象后对对象的初始化或者说给对象的属性赋值。如果把这个对象看作是一个动态的,比如大家经常玩的手游王者荣耀或英雄联盟,游戏中的角色必然是随着游戏的进程而不断成长的,那么其中角色的属性也必然是不断变化的,但游戏的公平性必然是在游戏开始时英雄的属性是固定的,也就是说这个对象我们在创建后会给他赋个初始值,那么这里就需要使用到我们这里说的构造函数。** Java构造函数,也可以称之为构造方法,是Java中一种特殊的函数。即 构造函数没有返回类型,且函数名和类名保持一致。 ** ** 我们在类中new完对象后,其实也就调用了该对象的属性和方法。 构造函数的一个基本作用便是我们 用来初始化成员属性和成员方法的。 ** ** 构造函数的两种格式: **

1.修饰符 类名(参数列表) {}

2.直接类名(参数列表){}

在这两种格式中对于参数列表我们也可以分为 默认无参构造函数和有参数的构造函数。 ** 无参构造函数实例: **


public class Employee{    public Emploeey()    {}}

有参构造函数实例:


public class Employee{    public Employee(String name,int age)    {}}

To:构造函数可以有return函数,但不能有具体的返回类型。


public class Employee{    public Employee(String name,int age)//无返回值    {        return;//构造函数中可以有return关键字,但是不能有具体的返回类型    }}

To:如果我们自己没有创建构造函数,那么我们在创建对象时会自动的隐式调用类中给我们提供的构造函数。

(如下面的Student s = new Student() ; )

程序实例:


package self2;public class Student {    int age;    String name;    boolean flag;        public Student(String name,int age) {            }        public static void main(String[] args) {        //Student s = new Student();//自己创建构造函数后,这是错误的        Student s1 = new Student("bob",2);//必须依赖类中提供的构造函数        System.out.println("年龄="+s1.age);        System.out.println("name="+s1.name);        System.out.println("flag="+s1.flag);    }}

Java程序中的构造方法不是手动调用的,而是对象被创建的时候由jvm调用。
如果一个类没有定义构造方法,jvm编译的时候会给这个类默认添加一个无参构造函数; 如果定义了构造方法,那么jvm便不会再创建无参构造方法。
创建对象的时候,有几个参数,与其对应的构造方法,也要 有几个参数。简单来说,构造函数便是 给类中的属性赋值使之初始化。

继续干Java~

文章配图

文章配图

为你,千千万万遍

往期推荐:

Java:让我们来一起面向对象 2021-10-12
文章配图

Java基础之main入口函数及循环语句~ 2021-08-16
文章配图

聊聊Java运算符的那些事 2021-08-14
文章配图

一键三连,就差你了
文章配图

预览时标签不可点

阅读




__