JAVA基础——面向对象

面向对象和面向过程的思想对比:

        面向过程编程(Procedure Oriented Programming)以过程为中心的编程思想,通过自己实现每一步功能;

        面向对象编程(Object Oriented Programming )以对象为中心的编程思想,通过指挥对象实现具体功能

        对象:客观存在的事物

1、类和对象

        类是现实生活中一类具有共同属性和行为的事物的抽象,对事物/对象的一种描述。

        对象是某个描述具象化的个体。

        类的组成:属性(特征)+ 行为(能做的事情)

        属性:在代码中通过成员变量来体现(类中方法外的变量)

        行为:在代码中通过成员方法来体现(无static关键字)

2、类的定义

        一个类就是一种类型,eg:Student 和 int 都是一种类型;

        不一样的是,前者是引用数据类型,后者是基本数据类型。

3、对象的创建和使用

        创建对象的格式:

                类名 对象名 = new 类名();

                Student s = new Student();

        调用成员变量的格式:

                对象名.变量名;

                s.name;

        调用成员方法的格式:

                对象名.方法名();

                s.study();

4、对象内存图

  1. 单个对象内存图

    2.两个引用指向不同对象内存图

 

     3.两个引用指向同一个对象内存图

        *当堆内存中,对象或数组产生的地址,不能被找到时就变成了内存垃圾,java垃圾回收器自动删除。

5、成员变量和局部变量

 

6、封装(面向对象三大特性:封装、继承、多态)

   1.private关键字

        访问权限修饰符,可以用来修饰成员变量和成员方法,只能在本类当中进行访问,安全并提高复用性。

        只能通过set方法和get方法访问,set/get方法中可以设置条件。

        set方法:public void setName(String name){ }   有参无返回值;

        get方法:public String getName(){ }                   无参有返回值。

   2.this关键字

        this:代表所在类的对象引用;

        this.把局部变量变成成员变量;

        方法(this关键字)被哪个对象调用,方法中的this就代表哪个对象;

        如果局部变量和成员变量重名,java使用的是就近原则。

 

封装思想:

隐藏实现细节,仅对外暴露公告的访问方式。

        private仅仅是封装的其中一种体现:

        私有成员变量,提供set和get方法;

        将属性抽取到类当中,是对数据的一种封装;

        将代码抽取到方法中,是对代码的一种封装。

7、构造方法

  • 构造方法概述:

        构造、创造对象的时候所调用的方法

  • 格式
    1. 方法名和类名相同,大小写相同
    2. 没有返回值,没有void
    3. 没有具体的返回值
    4. 无参public 类名(){ }
    5. 带参public student(String name,int age){this.name=name;this.age=age}
  • 创建对象的时候调用,每创建一次对象,就会执行一次构造方法,不能手动调用。
  • 构造方法作用
    • 创建对象
    • 给对象的数据(属性)进行初始化
      • 调用无参构造时,会为成员变量默认初始化
      • 调用有参构造时,先默认初始化再赋值

                调用:new 类名( ); student s =new student( );

  • 注意事项:
    • 如果一个类中没有构造方法,系统会默认提供一个无参构造方法
    • 如果手动编写了带参构造方法,系统不会再提供默认的无参构造方法
    • 编写时,无参和带参构造方法同时编写

标准类的制作

        作用:封装数据

        快速完成:Alt+Insert

        注意:show方法不是标准的java类中必备成员

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值