栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java——面向对象初体验

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java——面向对象初体验

对象与类
  • 前言:
    • 一、类
    • 二、构造器
    • 三、封装
    • 四、对象
      • ①Student类
      • ②测试学生类实例化
    • 五、this
      • this关键字

前言:

首先我们来介绍以下面向对象的特点:
面向对象程序设计,我们关心的主要是对象,与面向切面程序设计的不同之处就是,我们自身不需要去"干活",而是将"活"委托给对象。
Java正是这一种语言,这将降低了我们的学习难度。

面向对象的三大特征

  • 继承
  • 封装
  • 多态
一、类

简述:
类是构造对象的蓝图或者所是模板。例如:Person类 包含了人的相同属性–姓名、年龄、身份证等等等。
类构造对象的过程就称为创建类的实例 也就是我们所说的对象

类与类之间的关系:

  • 依赖 : 这是一种常见的关系,例如:某一个对象需要依赖另一个对象才能完成业务逻辑的整体开发,软件工程的术语称为耦合
  • 聚合 : 这种关系也很好理解(has - a),例如:一个Order(订单)对象包含一个Item(一种商品)对象
  • 继承 : A继承B – A将继承B中的属性和行为,并且还能扩展自身的行为。

类的定义格式:
修饰符 class 类名{

}
注意:类的首字母必须大写,修饰符我们用public修饰。

类的成分:

  • 成员变量(属性) : Field 用于描述类和对象的属性
  • 成员方法 : Method 用于描述对象的行为
  • 构造方法 : Constructor 用于初始化类并返回一个对象引用
  • 代码块
    ①静态代码块
    ②实例代码块
  • 内部类
二、构造器
构造器的定义方式:

修饰符 与类名一致(){

}

作用 : 初始化一个类的对象并返回引用

构造方法初始化对象的格式:

类名 自定义对象名 = new 构造器();

注意:

一个类默认拥有一个无参构造,不写也存在,但是如果一个类写了一个带参数构造方法,

那么默认的无参构造就会被覆盖,所以我们应该手写无参构造。

三、封装

概念:

封装又可以称为数据隐藏。

从现象来看,就是将数据和行为隐藏在一个包中,并对对象的使用者进行隐藏具体的实现方式。

对象中的属性称为实例属性,操作数据的行为称为实例方法。

实现封装的过程就在于,适当隐藏,合理暴露,也就是说不能让其他类直接访问属性。只能通过对象的方法与之进行交互。

这就让我们的开发者更加关注于对象,而不是类本身。

四、对象

对象的三个特征

  • 行为:也就是说可以操作对象完成对应的操作
  • 状态:当调用方法时,对象会如何响应。
  • 标识: 用于区分具有相同行为但状态不一样的对象
①Student类
public class Student {
    //成员属性
    private int id;
    private String name;
    private String sex;

    //无参构造
    public Student() {
        System.out.println("这是无参构造方法");
    }

    //带参构造
    public Student(int id, String name, String sex) {
        this.id = id;
        this.name = name;
        this.sex = sex;
    }

    //get set方法 初学者建议手写
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
    //写作业方法
    public void writer(){
        System.out.println(this.name + "写作业");
    }

    //toString() 显示我们对象属性的输出格式
    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + ''' +
                ", sex='" + sex + ''' +
                '}';
    }
}
②测试学生类实例化
public class TestStudent {
    public static void main(String[] args) {
        //无参构造初始化对象
        Student s1 = new Student();
        System.out.println(s1);

        //带参构造初始化对象
        Student s2 = new Student(1,"张三","男");
        System.out.println(s2);
    }
}
五、this this关键字

作用:

  • this代表了当前对象的引用
  • this关键字可以用在实例方法和构造器中
  • this用在方法中,谁调用这个方法,this就代表谁
  • this用在构造方法中,代表了构造方法正在初始化的那个对象的引用
public class TestStudent {
   public static void main(String[] args) {
       //1.创建对象
       //1.1无参构造初始化对象
       Student s1 = new Student();
    //通过set方法来赋值
       s1.setId(1);
       s1.setName("张三");
       s1.setSex("男");
       System.out.println(s1);

       //1.2带参构造初始化对象
       Student s2 = new Student(2,"李四","男");
       System.out.println(s2);

       //对象调用方法 通过 对象名称.方法名() ——测试this关键字的引用问题
       s1.writer();
       s2.writer();
   }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/820792.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号