0
点赞
收藏
分享

微信扫一扫

Java-面向对象编程(oop)6-笔记

Java-面向对象编程(oop)6-笔记_构造器

1.面向对象的思想

面向:拿或者找

对象:东西

面向对象编程:拿或者找东西过来编程解决问题

面向对象:把现实世界中的事物全部看成一个一个的对象来解决问题的。(万物皆对象)

面向对象编程的好处:代码符合人类的思维习惯,编程程序更简单,看程序更容易理解吧。

2.类、对象

类(设计图):相同事物共同特征的描述

对象:对象是类的具体的实例。

  • 对象==实例

在Java中必须先定义类,才能得到对象。

3.定义类来创建对象使用呢?

定义类的格式

定义类有一些注意事项

  • 1、类名首字母建议大写,有意义,满足驼峰,不要用关键字,合法的标志符
  • 2、一个Java文件中可以定义多个类,但是只能一个类是public修饰的,而且public修饰的类名必须成为Java代码的文件名称,否则报错!

类中具体怎么写呢?

  • 定义汽车类为例
  • 一般名词定义成成员变量(属性):
  • 修饰符 数据类型 变量名称 = 初始值;
  • private String name;
  • private double price;
  • 成员变量不建议给初始化值,存在默认值,默认值的规则:整型是0,浮点型是0.0 引用类型null,布尔型是false
  • 一般动词定义成方法(行为)

具体定义类的例子

  • public class Car {
    // 名词(属性,成员变量)
    String name;
    double price;
    // 动词(行为,成员方法)
    public void start(){
    System.out.println(name + "价格是" + price +"启动成功~~");
    }
    public void run(){
    System.out.println(name +
    "价格是" + price +"性能很好,跑的很快~~");
    }
    }

创建对象

  • 类名 对象名 = new 构造器();
  • 对象怎么使用
  • 对象名.成员变量
  • 对象名.成员方法

4.构造器

作用:

  • 初始化一个类的对象,并返回这个对象的地址。

详细格式:

  • 修饰符 类名(形参){ .... }

构造器的分类:

  • 无参数构造器
  • 初始化一个类的对象,并返回这个对象的地址,里面的数据都是默认值
  • 有参数构造器
  • 初始化一个类的对象,并返回这个对象的地址,并且可以同时为对象赋值。

构造器如何调用呢?

  • 类名 对象名 = new 构造器;

注意:

  • 任何类写出来自带一个无参数构造器,写不写都有
  • 如果你在这个类中定义了一个有参数构造器了,那么无参数构造器就消失了,此时,如果你还要使用无参数构造器,你必须自己写一个。

public class Car {

String name;
double price;

/**
无参数构造器
*/
public Car(){
System.out.println("无参数构造器被调用了~~");
}

/**
有参数构造器
*/
public Car(String n, double p){
System.out.println("有参数构造器被调用了~~");
name = n;
price = p;
}

}

5.this关键字

this的作用:代表了当前对象的地址,可以访问当前对象的成员变量和成员方法。

this具体用在哪儿呢?

  • 可以用在有参数构造器中的
  • public Car(String name, double price){
    // 注意:this在构造器中,代表构造器正在初始化的那个对象。
    System.out.println(this);
    ​​​this.name​​​ = name;
    this.price = price;
    }
  • 可以用在方法中
  • public void goWith(String name){
    // 注意:this在方法中,谁调用这个方法this就代表谁!
    System.out.println(​​​this.name​​​ + "正在和"
    + name +"比赛");
    }

6.封装

面向对象的三大特征:封装、继承、多态。

封装的基本思想:

  • 决定属性和行为归属谁的问题
  • 定义人类(名称,年龄,吃饭、睡觉)
  • 定义圆类
  • 半径,画圆
  • 定义门类
  • 开门,高宽
  • 定义票类
  • 票价,地址,买票

如何更好的封装呢?

  • 成员变量建议private私有化,只能本类访问了。
  • 合理暴露:
  • 提供成套的getter和setter方法暴露取值和赋值

7.标准JavaBean

是什么?就是所谓的实体类(学生类,老师类,汽车类,票类,人类)

作用:创建对象,封装数据的。

标准Bean的书写要求:

  • 成员变量建议private私有化,只能本类访问了。
  • 合理暴露:
  • 提供成套的getter和setter方法暴露取值和赋值
  • 必须提供无参数构造器。

8.局部变量和成员变量的区别

举报

相关推荐

0 条评论