5,Java的面向对象

面向对象就是将现实的事物抽象的方式描绘出来,把现实生活的事物以及关系,抽象成类,然后封装,方便使用就是面向对象(万物皆对象)。

1,面向对象的初步的认识                                                                                       

 1,编程语言分为两种编程思想:

​        面向过程的 和面向对象的

        面向过程什么事都自己写从开始到结束用自己的逻辑实现

        面向对象:在面向过程的基础上,某些过程不需要自己写通过jdk已经封装好的类进行调用

        方法进行实现相对应的功能

        两者并没有明显的界限

2,面向对象的两个概念

        类:是对一切相似事物的统称.是一个泛泛的概念。可以用来描述事物的特征和行为

        对象:就是一个具体的实体。

        类和对象的关系:

        对象是类的具体的实现,在类下面延伸出来具体对象

        在java中先有类 再有对象,类的语法格式

         Public  class  类名{

         定义属性及行为;

        }

        有了类,然后通过类去创建对象,然后让对象去处理一些专门的事

        java对象的格式

        类名 对象的名字 = new 类名()

        例;

        Scanner scanner = new Scanner();

3,创建类的两种格式

        一种是定义在同一个类下

       例

         class Car {

         //属性

         String kind;//品牌

         String color;//颜色

     //行为

               public void run () {

              System.out.println("跑得飞快");

               }

        }

        public class Demo1 {

               public static void main(String[] args) {

                      //下面要写 创建对象(实例化对象)

                      Car car1 = new Car();

                      car1.kind = "BYD";

                      car1.color = "红色";

                      System.out.println(car1.kind);

                      System.out.println(car1.color);

                      car1.run();      

       }

}

定义在不同的类中

先定义一个类

类的语法格式

Public  class  类名{

         定义属性及行为;

}

有了类,然后通过类去创建对象,然后让对象去处理一些专门的事

在创建一个带有主函数的的类,在main函数中创建一个java对象

java对象的格式

类名 对象的名字 = new 类名()

例;

Scanner scanner = new Scanner();

4,类和对象的内存分析

咱们可以简单的暂时将java内存区域分为 栈和堆

栈区:存放的局部变量(包含了编译器可知的基本数据类型,和对象引用--》对象的内存地址-》对象的名字)

堆区:保存的是对象的真正的数据,即对象的属性信息

5,构造方法【重点】

目的:初始化当前类的对象

​                     就是对属性进行赋初始化值的

        1无参构造方法格式:public 类名(){

​                      语句体;

        }

        2,有参构造方法格式:public 类名(参数){

​              语句体;

        }

        注意事项:如果在类中写了有参构造,本身默认无参就会消失

        ​构造方法必须写在声明的类里面,一般写在 属性的下面   方法 的上面

        2.没有void关键字  也没有任何的 数据类型返回值

        3.方法的名字必须是当前的类名

        4.当实例化对象的时候,会调用当前类下面的无参数的构造方法

        5.每一个类即使不写构造方法,会默认给你一个无参构造方法,所以直接new 类名()

        6.有参构造的目的是直接对属性进行赋值

6,关于有参构造和无参构造的注意事项

        1.无参的构造方法可以是一个类自己默认的,但是写了有参数的构造之后,无参数的构造就

        没有了

        2.构造方法的名字一定要和类名保持一致。其他的成员方法不能和类名一样

        3.构造方法没有返回值也没有使用void进行修饰

        4.构造方法可以有多个的···············

构造代码块

        现在很少用,实例化对象的时候首先调用构造方法

        构造代码块在构造方法之前执行,前提必须实例化话出来对象

        1语法格式

        {

                      语句体;

        }书写位置变量位置下构造方法上

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值