类和对象认识

目录

1.面向对象的初步认识

1.1 什么是面向对象

2. 类的定义和使用 

2.1 简单认识类:

2.2 类的定义格式

3.类的实例化(创建对象) 

3.1 什么是实例化

3.2 类和对象的说明

 4.构造方法(类中特殊的成员方法)

 4.1 概念

5. this引用

5.1 为什么要用this引用

5.2 什么是this引用


1.面向对象的初步认识

1.1 什么是面向对象

 java是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。

1.2 面向过程和面向对象

两个并不是一门语言,而是解决问题的方法,没有好坏之分,都有其专门的应用场景。

2. 类的定义和使用 

2.1 简单认识类:

  • 类:描述一类对象所具备的共同属性和行为 。(比较抽象的概念)
  • 对象:某个类的具体表现,在每个具体的对象中,属性才有了具体的值。

2.2 类的定义格式

在java中定义类时需要用到class关键字 

//创建类

class(定义类的关键字) ClassName{

      field;//字段(属性)或者成员变量

      method;//行为或者成员方法(主要说明类具有哪些功能)

}

//定义一个学生类

       //类名称采用大驼峰定义
    public class Student{
        //成员前写法统一为public
        public String name;
        public String gender;
        public short age;
        public double score;
        //此处写的方法不带static关键字
        public void DoClass(){}
        public void DoHomework(){}
        public void Exam(){}
    }

注意:

  1. 在java中,所有的属性和行为都必须在某个类中定义
  2. 类是一个模板/蓝图,有了类才能产生对象 
  3. 一般情况下,一个文件当中只定义一个类
  4. main方法所在的类一般要使用public修饰
  5. public修饰的类必须要和文件名相同
  6. 不要轻易去修改public修饰的类的名称,如果要修改,通过开发工具修改。

3.类的实例化创建对象) 

3.1 什么是实例化

  1.      定义了一个类,就相当于与在计算机中定义了一种新的类型。例如Student类,一种新定义的类型,有了这些自定义的类型之后,就可以使用这些类来定义对象。

2. 用类创建对象的过程,称为类的实例化,使用new关键字

注意:

  1. new关键字用于创建一个对象的实例
  2. 使用.来访问对象中的属性和方法
  3. 同一个类可以创建多个实例。

3.2 类和对象的说明

  1.  类只是一个模型一样的东西,用来对一个实体进行描述,限制了类有哪些成员。
  2. 类是一种自定义的类型,可以用来定义变量
  3. 一个类可以实例化出多个对象,实例化出的对象,占用实际的物理空间,存储类成员变量
  4. 通过类实例化出的对象才能实际存储数据,占用物理空间、

 4.构造方法(类中特殊的成员方法)

 4.1 概念

   构造方法(也称为构造器)是一个特殊的成员方法,名字必须与类名相同,在创建对象时,由编译器自动调用,并且在整个对象的生命周期内只调用一次。

public class Data {
        public int year;
        public int month;
        public int day;


        //构造方法:名字与类名相同,没有返回值类型,设置为void也不行
        //一般情况下用public修饰
        //在创建对象时由编译器自动调用,并且在对象的生命周期中只调用一次
        //构造方法可以重载
        public Data(int year, int month, int day) {
           
            this.year=year;
            this.month=month;
            this.day=day;
            System.out.println("data的构造方法");
        }

        public void printData() {
            System.out.println(year + "-" + month + "-" + "day");
        }

 注意:构造方法的作用就是对对象中的成员进行初始化,并不负责给对象开辟空间。

  • 构造方法中,可以通过this调用其他构造方法简化代码

 

//无参构造方法--内部给成员赋值初始值,该部分功能与三个参数的构造方法重复
       //此处可以在无参构造方法中通过this调用带有三个参数的构造方法
       //但是this(1900,1,1);必须是构造方法中的第一条语句
       public Data(){
           this(1900,1,1);
       }
        public Data(int year, int month, int day) {

            this.year=year;
            this.month=month;
            this.day=day;

        }

 

5. this引用

5.1 为什么要用this引用

形参名不小心与成员变量名相同

5.2 什么是this引用

this引用指向当前对象(成员方法运行时调用该成员方法的对象),在成员方法中所有成员变量的操作,都是通过该引用去访问。只不过所有的操作对用户是透明的,即用户不需要来传递,编译器自动完成。

注意:this引用的是调用成员方法的对象

 public class Data {
        public int year;
        public int month;
        public int day;


      
        public Data(int year, int month, int day) {

            this.year=year;
            this.month=month;
            this.day=day;

        }

        public void printData() {
            System.out.println(year + "-" + month + "-" + "day");
        }
    }


}
  • this只能在“成员方法”中使用
  • 在“成员方法”中,this只能引用当前对象,不能在引用其他对象。
  • this是“成员方法”第一个隐藏的参数,编译器会自动传递,在成员方法执行时,编译器会负责将调用成员方法对象的引用传递给该成员方法,this负责来接收。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值