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

Day17 Java学习之面向对象构造方法练习体会

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

Day17 Java学习之面向对象构造方法练习体会

目录

一、案例:

需求:

解题分析:

具体的代码实现: 

 二、练习体会:

面向对象做题分析步骤:


一、案例:

需求:

定义一个员工类Employee

    * 自己分析出几个成员,然后给出成员变量

        * 姓名name,工号id,工资salary

    * 构造方法,

        * 无参和有参的

    * getXxx()setXxx()方法,

    * 以及一个显示所有成员信息的方法。并测试

解题分析:

1. 由面向对象思想可知需要先定义一个员工类Employee

2.并且在此类中定义类的属性——成员变量,该成员变量最好使用private修饰进行封装的第一步,上一篇文章我们已经讲过封装的好处了。

3.进在此类中创建构造方法,建议无参构造方法与有参构造方法都一并定义,方便我们的后续使用。

4.在进行封装的第二步定义getXxx()与setXxx()方法,做为外部的访问使用

5.最后定义一个显示所有成员变量的信息方法

6.再定义一个测试类,验证该员工类是否达到要求

具体的代码实现: 

员工类Employee代码

package com.feisi.work10;


public class Employee {
    private String Name;
    private int Id;
    private double Salary;

    // 无参构造
    public Employee() {
    }
    // 有参构造将成员变量赋值
    public Employee(String name, int id, double salary) {
        Name = name;
        Id = id;
        Salary = salary;
    }

    // get set方法提供外部访问操作

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public int getId() {
        return Id;
    }

    public void setId(int id) {
        Id = id;
    }

    public double getSalary() {
        return Salary;
    }

    public void setSalary(double salary) {
        Salary = salary;
    }

    // 显示方法
    public void show(){
        System.out.println(Name);
        System.out.println(Id);
        System.out.println(Salary);
    }
}

测试类代码1: 

package com.feisi.work10;


public class Demo1 {
    public static void main(String[] args) {
        // 创建对象
        Employee employee = new Employee("小明",123456,5000);
        // 调用方法
        employee.show();
    }
}

运行结果1:  

 测试类代码2:因为员工类中属性被private所修饰被封装,不能使用: 对象名.属性名 进行操作,

那么要想访问该如何操作呢所以有了getXxx()与setXxx()方法,做为外部的访问使用,

package com.feisi.work10;


public class Demo1 {
    public static void main(String[] args) {
        // 创建对象
        Employee employee = new Employee("小明",123456,5000);
        employee.setName("小红");
        employee.show();
    }
}

 运行结果2:其中employee.setName("小红");将属性name重新赋值,所有才有了以下输出

 

 二、练习体会:

面向对象做题分析步骤:

1.在做面向对象该类题目时,应先看题能抽离出几个工具类

2.进而分析工具类中是否需要有属性成员和那些行为方法

3.再结合实际考虑属性成员与行为方法的作用域修饰符及封装的思想

4.最后再写对应的代码,并进行测试

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

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

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